100% found this document useful (4 votes)
28 views

Pro Functional PHP Programming: Application Development Strategies For Performance Optimization, Concurrency, Testability, and Code Brevity Rob Aley

PHP

Uploaded by

donhucedo
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (4 votes)
28 views

Pro Functional PHP Programming: Application Development Strategies For Performance Optimization, Concurrency, Testability, and Code Brevity Rob Aley

PHP

Uploaded by

donhucedo
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 62

Download the full version of the textbook now at textbookfull.

com

Pro Functional PHP Programming: Application


Development Strategies for Performance
Optimization, Concurrency, Testability, and
Code Brevity Rob Aley
https://textbookfull.com/product/pro-functional-
php-programming-application-development-
strategies-for-performance-optimization-
concurrency-testability-and-code-brevity-rob-aley/

Explore and download more textbook at https://textbookfull.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

Pro Functional PHP Programming Application Development


Strategies for Performance Optimization, Concurrency,
Testability, and Code Brevity Aley
https://textbookfull.com/product/pro-functional-php-programming-
application-development-strategies-for-performance-optimization-
concurrency-testability-and-code-brevity-aley/
textbookfull.com

Biota Grow 2C gather 2C cook Loucas

https://textbookfull.com/product/biota-grow-2c-gather-2c-cook-loucas/

textbookfull.com

Pro TypeScript: application-scale javascript development


Second Edition Fenton

https://textbookfull.com/product/pro-typescript-application-scale-
javascript-development-second-edition-fenton/

textbookfull.com

Domestic law in international investment arbitration 1st


Edition Hepburn

https://textbookfull.com/product/domestic-law-in-international-
investment-arbitration-1st-edition-hepburn/

textbookfull.com
The Home That Was Our Country A Memoir of Syria First
Trade Paperback Edition Malek

https://textbookfull.com/product/the-home-that-was-our-country-a-
memoir-of-syria-first-trade-paperback-edition-malek/

textbookfull.com

Cloud Computing Basics: A Non-Technical Introduction 1st


Edition Anders Lisdorf

https://textbookfull.com/product/cloud-computing-basics-a-non-
technical-introduction-1st-edition-anders-lisdorf/

textbookfull.com

The Russian Art of War How the West Led Ukraine to Defeat
Jacques Baud

https://textbookfull.com/product/the-russian-art-of-war-how-the-west-
led-ukraine-to-defeat-jacques-baud/

textbookfull.com

Intel Xeon Phi Coprocessor Architecture and Tools The


Guide for Application Developers 1st Edition Rezaur Rahman
(Auth.)
https://textbookfull.com/product/intel-xeon-phi-coprocessor-
architecture-and-tools-the-guide-for-application-developers-1st-
edition-rezaur-rahman-auth/
textbookfull.com

Hedge Fund Secrets: An Introduction to Quantitative


Portfolio Management Philip J. Romero

https://textbookfull.com/product/hedge-fund-secrets-an-introduction-
to-quantitative-portfolio-management-philip-j-romero/

textbookfull.com
Cognition Metacognition and Culture in STEM Education
Learning Teaching and Assessment 1st Edition Yehudit Judy
Dori
https://textbookfull.com/product/cognition-metacognition-and-culture-
in-stem-education-learning-teaching-and-assessment-1st-edition-
yehudit-judy-dori/
textbookfull.com
Rob Aley

Pro Functional PHP Programming


Application Development Strategies for
Performance Optimization, Concurrency,
Testability, and Code Brevity
Rob Aley
Oxford, UK

Any source code or other supplementary material referenced by the


author in this book is available to readers on GitHub via the book's
product page, located at www.apress.com/9781484229576 . For
more detailed information, please visit www.apress.com/source-
code .

ISBN 978-1-4842-2957-6 e-ISBN 978-1-4842-2958-3


https://doi.org/10.1007/978-1-4842-2958-3

Library of Congress Control Number: 2017954985

© Rob Aley 2017

This work is subject to copyright. All rights are reserved by the


Publisher, whether the whole or part of the material is concerned,
specifically the rights of translation, reprinting, reuse of illustrations,
recitation, broadcasting, reproduction on microfilms or in any other
physical way, and transmission or information storage and retrieval,
electronic adaptation, computer software, or by similar or dissimilar
methodology now known or hereafter developed.

Trademarked names, logos, and images may appear in this book.


Rather than use a trademark symbol with every occurrence of a
trademarked name, logo, or image we use the names, logos, and
images only in an editorial fashion and to the benefit of the
trademark owner, with no intention of infringement of the
trademark. The use in this publication of trade names, trademarks,
service marks, and similar terms, even if they are not identified as
such, is not to be taken as an expression of opinion as to whether or
not they are subject to proprietary rights.

While the advice and information in this book are believed to be true
and accurate at the date of publication, neither the authors nor the
editors nor the publisher can accept any legal responsibility for any
errors or omissions that may be made. The publisher makes no
warranty, express or implied, with respect to the material contained
herein.

Printed on acid-free paper

Distributed to the book trade worldwide by Springer


Science+Business Media New York, 233 Spring Street, 6th Floor,
New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505,
e-mail [email protected], or visit
www.springeronline.com. Apress Media, LLC is a California LLC and
the sole member (owner) is Springer Science + Business Media
Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware
corporation.
Acknowledgments
Isaac Newton said, “If I have seen further, it is by standing on the
shoulders of giants.” This book builds on, and I hope adds to, the
work of many others, the most notable of whom I would like to
acknowledge here.
The authors of, and contributors to, the official PHP Manual :
This is an invaluable reference for PHP functions and syntax, to
which I referred frequently during writing this book, both for
fact checking and as an aide-mémoir. Thanks!
The collective PHP and functional programming wisdom of the
Internet : For more than 17 years I’ve used you for learning,
research, play, and profit. There are too many sites and too
many people to list here; if you’ve written about PHP on the
Web, then you may well be one of them. Thanks!
My family : Thanks for allowing me a modicum of time to write
this book and supporting me unconditionally in everything I do.
Usually. If I ask first. And there’s not something more important
going on. And usually with conditions. Thanks!
Contents
Part I: Functional Programming in PHP 7

Chapter 1:​Introduction

Who Is This Book For?​

What Is Functional Programming?​

Functional Programming Is SOLID

What Are the Benefits of Functional Programming?​

Who Uses Functional Programming, and Why?​

Is Functional Programming “All or Nothing”?​

Further Reading

Why Use PHP for Functional Programming?​

Why Not to Use PHP for Functional Programming

PHP Versions

Conclusion

Chapter 2:​Functional Programming:​Key Concepts

Examining State

Mutability and Immutability

Further Reading

What Is a Function?​
Named Functions

Variable Functions

Language Constructs

Return Values

Lambda/​Anonymous Functions

Higher-Order Functions

Scope

Further Reading

State

Parameters/​Arguments/​Operands, Arity, and Variadic


Functions

Further Reading

Closures

Side Effects

Referential Transparency

Pure Functions

Lists and Collections

Further Reading

Conclusion

Chapter 3:​Getting Started with Functional Patterns


Map, Filter, and Reduce

Recursive Functions

Basic Recursion

Implementing a Recursive Function

Partial Functions

Functional Expressions

Functional Composition

Conclusion

Chapter 4:​Advanced Functional Techniques

Currying Functions

The Mysterious Monad

What Is a Monad?​

The Maybe Monad

Monad Axioms

Monad Axiom 1

Monad Axiom 2

Monad Axiom 3

Testing the Monad Axioms

Other Useful Monads

The IO Monad
Learn More About Monads

Further Reading

Recursion with Trampolines

Recursive Lambdas

The PHP Type System

Type Declarations

Further Reading

Summary

Part II: Application Development Strategies

Chapter 5:​Strategies for High-Performance Applications

Understanding and Measuring Performance

Measuring Performance:​Profiling

Manual Profiling

Profiling Tools

Further Reading and Tools

Low-Level Profiling

Further Reading

Memoization

Further Reading

The Downsides of Memoization


Lazy Evaluation

Further Reading

Generators

Further Reading

The Downsides of Lazy Evaluation

Parallel Programming

Multithreaded Programming

Further Reading

The Standard PHP Library (SPL)

Further Reading

Conclusion

Chapter 6:​Managing Business Logic with Functions

Managing Business Logic

Event-Based Programming

Further Reading

Asynchronous PHP

Further Reading

Chapter 7:​Using Functional Programming in Objected-


Oriented and Procedural Applications

History of PHP Paradigms


Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
Further Reading

PHP Is Not a Functional Language

Objects and Mutability

Further Reading

Immutable Data with Objects

Object Properties As External State

Inline Impurities

Procedural Programming Considerations

Summary

Chapter 8:​Using Helper Libraries in Your Application

How to Choose a Library

Pick Libraries Apart

Libraries Based on Ramda

Pramda

Phamda

Libraries Based on Underscore

Underscore.​php (1)

Underscore

Underscore.​php (2)

Miscellaneous Libraries
Saber

Functional PHP

Other Libraries

Chapter 9:​Processing Big Data with Functional PHP

What Is Big Data?​

Introducing Hadoop

About MapReduce

Installing Hadoop

Tools

Creating Hadoop Jobs in PHP

Further Reading

Chapter 10:​Afterword

Where to Now?​

Giving Feedback and Getting Help and Support

Appendix A: Installing PHP and Libraries

Compiling and Installing PHP

Microsoft Windows

macOS/OS X

Linux/Unix

Compiling and Installing (Extra) Core Extensions


Installing Multiple Versions of PHP

Further Reading

Tools

PEAR and PECL

Composer

Symfony2 Bundles

Getting Help

The PHP Manual

Official Mailing Lists

Stack Overflow

Other Books

Newsgroups

PHP Subredit

PHP on GitHub

File and Data Format Libraries for PHP

Office Documents

Compression, Archiving, and Encryption

Graphics

Audio

Multimedia and Video


Programming, Technical, and Data Interchange

Miscellaneous

Appendix B: Command-Line PHP

PHP Without a Web Server

What’s Different About the CLI SAPI?

Further Reading

CLI SAPI Installation

PHP Command-Line Options

Further Reading

Command-Line Arguments for Your Script

Different Ways to Call PHP Scripts

From a File

From a String

From STDIN

As a Self-Executing Script: Unix/Linux

Further Reading

As a Self-Executing Script: Windows

Windows php-win.exe

“Click to Run” Your PHP

Clickable Icons: Linux


Further Reading

Clickable Icons: Windows

Clickable Icons: Ubuntu Unity

Further Reading

Quitting Your Script from Within

Further Reading

Thinking About Security

Further Reading

CLI-Specific Code Frameworks

Further Reading

PHP REPLs

PsySH

Boris

phpa

PHP Interactive

Sublime-worksheet

phpsh

iPHP

Appendix C: Functional Programming Resources

Other Programming Languages


Functional Programming and Other Paradigms

Articles

Online Books

Videos

Online Courses

Functional Programming Design Patterns

PHP Functional Basics

Data Structures

Mutability in PHP

Map, Filter, Reduce and Other Array Functions

Recursion and Trampolines

Partial Functions and Currying

Functional Composition

Monads

Types

Profiling

Memoization

Lazy Evaluation

Relevant PHP Manual Sections

Parallel Programming
Testing

Event-Based Programming

Asynchronous PHP

Big Data/Hadoop

General-Purpose Libraries

Functional Framework

Lisp in PHP

Other Miscellaneous Topics

PHP RFCs: The Future

The Wikipedia Glossary

Index
Contents at a Glance
About the Author

About the Technical Reviewer

Acknowledgments

Part I: Functional Programming in PHP 7

Chapter 1:​Introduction

Chapter 2:​Functional Programming:​Key Concepts

Chapter 3:​Getting Started with Functional Patterns

Chapter 4:​Advanced Functional Techniques

Part II: Application Development Strategies

Chapter 5:​Strategies for High-Performance Applications

Chapter 6:​Managing Business Logic with Functions


Chapter 7:​Using Functional Programming in Objected-Oriented and
Procedural Applications

Chapter 8:​Using Helper Libraries in Your Application

Chapter 9:​Processing Big Data with Functional PHP

Chapter 10:​Afterword

Appendix A: Installing PHP and Libraries

Appendix B: Command-Line PHP

Appendix C: Functional Programming Resources

Index
About the Author and About the
Technical Reviewer
About the Author
Rob Aley
I’ve been programming in PHP since late
2000. Initially it wasn’t by choice because my
preferred languages at the time were Perl
and Delphi (also known as Object Pascal).
Things began to change after I graduated
from the University of Leeds with a degree in
computer science in 1999 and started out in
a career as a freelance web developer. After
only a couple of months I was offered the
opportunity to take over a (relatively
speaking) substantial government web site
contract from a friend who was exiting the
freelance world for the safer and saner world of full-time
employment. The only catch was that several thousand lines of code
had already been written, and they were written in a relatively new
language called PHP. Oh, and the only other catch was that I had
about a week to learn it before taking over the site. So, as was the
way at the time, I popped down to the local Waterstones bookshop.
(For the younger among you that’s where we used to get books. And
we had to go out and get them. Or order online and wait many days
for them to be delivered.) With my paper copies of The Generic
Beginner’s Complete Guide to PHP and MySQL for Dummies
Compendium (I may not have recalled the titles completely
correctly), I settled down with a pint of ale (I’m in Yorkshire at this
point, remember) and set about reading them. A few days later I
was coding like a pro (well, stuff was working), and 17 years later I
haven’t looked back. Over those 17 years PHP has changed vastly
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
(the source code for the government web site I mentioned was
littered with comments like “# Would have used a foreach here, if
PHP had one…”) and so have I. I like to think that both I and PHP
have only improved and matured over the years.
After a varied career as a freelancer and starting up a couple of,
er, startups (IT related and not) with varying (usually dismal)
success, I spent the past ten years as a programmer at the
University of Oxford. My day job involved performing medium-scale
data acquisition and management, doing statistical analysis, and
providing user interfaces for researchers and the public. The
majority of my development work was done in PHP, either
developing new projects or gluing together other people’s software,
systems, and databases. I’ve recently left the university to
concentrate on writing books like this and providing consulting and
training (in PHP, information governance, and related areas). But I’m
still programming in PHP!
Throughout my career I’ve always used PHP for web
development, but for desktop GUI work I initially used Delphi (and
then Free-Pascal/Lazarus), complemented with Bash shell scripting
for CLI-based tasks. This was mainly because I learned them while
at university. However, as PHP has matured, I’ve increasingly used it
beyond the Web, and now I rarely use anything else for any
programming or scripting task I encounter. Having been immersed in
other languages such as C++, JavaScript, Fortran, and Lisp (and
probably others that my brain has chosen deliberately not to
remember) by necessity during university and in some of my
freelance jobs, I can honestly say that PHP is now my language of
choice, rather than of necessity. At university (in the late 1990s) I
took a couple of classes that involved functional programming, but
at the time I really didn’t “get the point.” It’s only in recent years
that I’ve picked up functional-style programming again, partly
because of the “buzz” that’s developed around it and partly because
as my programming styles have “matured,” I’ve seen the advantages
to functional coding.
When I’m not tied to a computer, I would like to say I have lots
of varied and interesting hobbies. I used to have. I could write a
whole book (which wouldn’t sell well) about where I’ve been and
what I’ve done, and I’d like to think it’s made me a well-rounded
person. But these days I don’t have any. In large part, this is
because of the demands of my three gorgeous young daughters,
Ellie, Izzy, and Indy; my gorgeous wife, Parv; and my even more
gorgeous cat, Mia. And I wouldn’t have it any other way. That’s what
I tell myself, anyway….
—Rob Aley

About the Technical Reviewer


Christopher Pitt
is a developer and writer, working at SilverStripe. He usually works
on application architecture, though sometimes you’ll find him
building compilers or robots. He is also the author of several web
development books and is a contributor on various open source
projects like AdonisJs.
Part I
Functional Programming in PHP 7
© Rob Aley 2017
Rob Aley, Pro Functional PHP Programming, https://doi.org/10.1007/978-1-4842-
2958-3_1

1. Introduction
Rob Aley1
(1) Oxford, UK

Functional programming isn’t something that is often associated with


PHP. Yet for quite a while PHP has had all the features necessary to
create software using the functional paradigm. In this book, you’ll
take a look at what functional programming is, how to do it in PHP,
and the different ways in which you can use it to improve your PHP
software.
Who Is This Book For?
This book isn’t an introduction to PHP itself; it assumes you have
some basic (or, indeed, advanced) experience in PHP scripting. You
don’t need to be an expert to follow along; I’ll cover all the key
concepts in PHP you’ll need to know to be able to implement
functional designs in your code and point you in the direction of
resources such as web sites and other books that you can use to
learn or investigate any related concepts that I don’t cover directly.
Absolute PHP beginners aside, this book is suitable for all
programmers. Whether you have a pressing need to learn functional
programming (perhaps you’ve taken over a functional PHP code
base) or you are just interested in finding out what the “buzz”
around functional programming is all about, there is something in
this book for you. There’s even likely to be something for those
skeptical about creating software using the functional programming
paradigm. I think that most programmers will find useful lessons and
code patterns to take away from the functional programming style
that will enhance their object-oriented or procedural programming
work. If all else fails, knowledge of functional programming looks
good on your résumé!

What Is Functional Programming ?


Functional programming is a declarative programming paradigm
that abstracts code into pure, immutable, side-effect-free
functions, allowing the programmer to compose such functions
together to make programs that are easy to reason about.

That is my definition of functional programming. Ask five other


functional programmers to define functional programming and you’ll
get four more answers (two just copied the same answer from
Wikipedia). There’s no “standard” definition; different people and
different programming languages implement functional programming
elements differently. These differences are partly because of the
Random documents with unrelated
content Scribd suggests to you:
XVII
KID SHACKLEY GETS A GLIMPSE OF
THE WORLD

The Shackley cabin stood high and dry above the bed of Goose
Creek; for, while there was nothing to fear from the narrow, trickling
stream of summer, the moody, tempestuous torrent of spring
threatened everything within reach, and Enoch Shackley was a
cautious man.
It was ten o’clock, but the flickering of flambeaux, the sound of
hurrying feet over the bare floor of the long living-room, the uneasy
tugging of old Bob at his chain, and a saddled mule in front of the
door, indicated some unusual nocturnal adventure.
Presently, far in the distance could be heard the creak of a jolt
wagon and the sound of voices singing “Sourwood Mountain.”
The cabin door suddenly flew open and Kid Shackley appeared. He
was a chunky, muscular boy, a worthy successor of his father, when
the blacksmith should grow too old to follow his trade. “They’re
comin’, mammy! Good-bye, I’ll tell you and pappy all ’bout hit when
I git back. Looks like a feller kin hear ter Kingdom Come in the night
time.”
His place in the doorway was filled by a tall, gaunt figure in a
meagre dress of blue calico, who peered out anxiously after him.
“Ain’t ye hongry, son? Whar d’ye reckon ye’ll git yore breakfast?”
“Sam Gooch ’lows we’ll be at Redbird somewhar near the Twilligers
—Eli’s kin. Likely they’ll want ter go on ’count of Piny. We’ll get ter
the Branch ’bout sun-up.”
Kid was in the saddle now, facing the newcomers. The jolt wagon
with its oxen threading along the stony bed of Goose Creek—a
lantern hung in front of the driver—cast long shadows which seemed
to multiply like those of a mysterious moving caravan. They filled
the gorge.
“G’lang, Billy,” and Kid was slowly descending the steep incline to
join the travellers who suddenly halted.
“Come on, come on!” chorused the voices from below.
Kid greeted the half-dozen occupants of the wagon in true mountain
fashion. “Howdy, Dan Gooch,” to the man guiding the oxen, “you’re
here on time. I heerd our rooster speakin’ up a spell back. He
reckoned ’twas mornin’ by the clatter.”
“He’d better watch out or Brer Fox’ll get him. Them pesky varmints
tuk nigh onto twenty little uns fer us last night. G’lang, Bright!” and
the cracking whip and groaning wagon drowned the greetings of the
others.
Kid fell in behind. There was no possible chance for conversation, so
they sang old English ballads, and “The Old Time Religion,” which
Talitha had taught them. As they rode along in the damp coolness,
Kid watched the lumbering wagon ahead, full of indistinct figures,
with a curious feeling of something new and strange about to enter
his life.
Right and left, the great pine-covered mountains both guarded and
threatened with their looming shapes. The highest part of the creek
bed made the only passable wagon road, and that was poor
enough. The air was full of moist odours, and above, the deep blue
dome was pierced with twinkling points of light.
The night wore on until the twinkling lights were lost, and a
greyness settled over the mountain world. They were travelling
northwest, leaving range after range of the Cumberlands, broken
only by the deep gorge of a river bed, behind them. Ahead, were
the foothills, and beyond, Kid had never seen. He only knew from
the glowing accounts of Pete, and Isaac, and Talitha—who had made
him promise to come to Bentville—that the Blue Grass in all its
richness lay very near the college.
Leaving the river bed they struck a mountain road which led, at long
intervals, past lonely, unpainted cabins more humble than those in
the small settlement at Goose Creek. Early as it was, people were
astir, noisily harnessing their mules, or yoking oxen. Here and there
a jaded saddle-horse or spirited colt was being pressed into service.
They were all bound for the same place.
“Hit’s like a circus, er buryin’, er baptizin’—” and here words failed
him. But he remembered Talitha’s description, and tried to imagine
how it would seem to see thousands of people on one level, wooded
space.
They had stopped singing now. A faint, rosy glow was spreading
above the mountains back of them, and glimpses of a great rolling
valley came from the front. The road ran steeply down, causing the
occupants of the wagon to sway in their chairs. Dan Gooch plied the
brake, vociferating to his oxen: “Hi thar, Bright! Steady, Star! See,
yon’s Redbird!”
Sam Coyle straightened an inert figure. He had been half dozing,
conscious of little except his broken rest. His journey to Bentville
was prompted by a curiosity which had been growing ever since
Abner had won the medal. There was a little pricking below the
jealousy in his heart when he thought what a “sorry” father he had
been. Dan Gooch was growing more enthusiastic every day over
“larnin’.” Sam wondered if it were too late—here he glanced at his
wife’s worn but radiant face. She was looking in the direction of
Redbird, but he knew that her heart was going out to Martin and
Talitha in Bentville, and that she had nothing to regret.
Billy and Sudie grew more excited each moment. “I’m that hongry I
could eat a bear; I hope they’ll have one fer breakfast!” exclaimed
the former.
“More like it’ll be a chicken,” laughed Kid as he guided Nick nearer
the wagon. “I saw Zeb Twilliger in the hen yard a minute ago.”
A lank, high cheek-boned mountaineer came slouching toward the
gate as they drove up. “Light and hitch,” he commanded
hospitably. “I reckon yo’re bound fer Bentville. Piny’s been pesterin’
the life out o’ us ter come; she sent word agin this week, an’ I ’low
ef she’s honin’ fer us, we’d shore ought ter go.”
“That’s what I told pappy,” interrupted Kid eagerly. “He and mammy
bide in the Hollow till they’re fair mossy. Pete and Ike’ll come back
plumb shamed of we-uns.” And then the boy flushed at what the
words implied.
Sam Coyle failed to make his usual sarcastic retort to the thrust at
Goose Creek. Indeed he was quite amiable to Kid on their way up to
the door of the rather untidy looking cabin. There was plenty of
bacon and cornbread, with coffee and fresh buttermilk for
breakfast. The chickens were for their dinner and had been cooked
the day before. “I never count on eatin’ chicken till I get a holt of
the drumstick,” whispered Billy to Kid, rolling his eyes.
Mrs. Twilliger was large and loud-voiced. The older children had all
married and left home except Piny. “We’d planned ter keep her fer a
spell yit, but I don’t reckon nothin’ ever’ll suit her ’round here now
she’s taken ter schoolin’; she air a queer gal.”
“I wouldn’t let hit fret me,” said Mrs. Gooch with unexpected spirit,
“the mountings air needin’ a few idees; I’m glad Gincy’s gittin’ ’em.
I’m plumb wore out with the old ones. She and Tally’d much better
be larnin’ out o’ books than marryin’ some no ’count chap thet goes
r’arin’ ’round, shootin’ up things ginerally.”
Mrs. Twilliger bristled up instantly; the description fitted her eldest
son-in-law too closely for her liking. However, Mrs. Gooch had an
unexpected ally in the master of the house. “Thet’s my idee; Piny’s
harum-scarum ’nough without gittin’ in with these chaps ’round
yere. We hev ’nough o’ them fellers in the fambly a’ready.”
Breakfast over, every one hurried to get a good start for the last part
of the journey to Bentville. The Twilliger outfit was a span of fat
mules and a light wagon. They took the lead, and the oxen were
soon far behind.
“You’d better push on, Kid,” advised Dan Gooch as the oxen toiled up
the last foothill before reaching the valley. “Yon’s Bentville—almost
in sight. Zeb Twilliger will be thar an hour ahead of us. Nick hez
sperit ’nough ter ketch up ter ’em stid of pokin’ ’long so powerful
slow.”
Kid took the advice. As he reached the top of the hill, he reined Nick
in for a moment to look at the panorama of colour which spread
below him. There were fields of corn and hemp threaded with a
narrow, silver path of water. Beyond the valley, on a little plateau,
was the white tower of a chapel. The trees were thick, but they
could not entirely screen the angular outlines of the college buildings
occupying the highest part of the little town.
The boy’s heart beat fast. He had never been more than ten miles
away from home in all his life before. Somehow the blacksmith’s
trade did not seem so alluring as it had yesterday; perhaps Pete and
Isaac were right after all. He was proud of them anyhow.
Down, down toward the bridge which crossed Brushy Fork and the
Big Hill Pike with the hard part of the journey behind him, Kid
overtook the Twilligers. He exchanged a few remarks, then cantered
past, and joined the long procession of vehicles and horsemen, all
headed in the same direction. This beat a circus, it beat Talitha’s
description carefully recalled from last year.
Kid was beginning to get excited. He passed team after team with a
cheery hail, and forged straight up the hill. Nick did not need to be
urged; he galloped directly into the crowd, and then past, only
slowing down on the main street for Kid to gaze with fascinated eyes
at the booths of popcorn, candy, peanuts, and ice cream.
Everywhere were students spreading their wares in tempting
proximity to the passersby. On all sides signs read: “This Way to the
Campus.” “Visit the Chapel Tower.” “See the Industrial Building.”
“Don’t Miss the Homespun Fair!”
Kid looked at everything with eager eyes. How could he ever see it
all in a day! So far there were no familiar faces. Nick plodded along
in the jam of teams quite subdued. There were lean, spiritless nags
drawing “sorry” buggies, jolt wagons and oxen, mules and more
mules. Kid watched them all—the black sunbonnets, the over-
trimmed hats, the attractive young faces and those lacking purpose.
Where were Martin, and Abner, and the rest? He looked up at the
big boarding hall set back in a yard full of trees. A throng was
pouring out of the side entrance. They were singing a rollicking
class song which appealed to Kid’s music-loving heart. As they came
toward him he saw Martin and Isaac leading the crowd.
Almost at the same instant they discovered him and made a rush
forward. “Hello, Kid, you’re just in time; we’re going over to the
Tabernacle this minute!” exclaimed Isaac.
“Didn’t any one else come?” asked Martin.
“You’ll see later,” Kid assured him with a grin, “but what’ll I do with
Nick?”
They led him into a long, roped driveway which crossed a little rustic
bridge. There, in the wooded part of the campus, were hundreds of
teams hitched to the trees or eating from the backs of wagons. In a
bag thrown across the saddle, Kid had brought feed for the mule.
“Here’s a good place, it’s near the road and shady, too,” said Isaac.
“We’ll come back after a while and find the rest of the folks. Now
let’s hurry.”
The three boys started toward a huge, unpainted building with a
large sign across the front, “The Tabernacle,” it read. People were
standing near the two large entrances which were closed. “We’ll go
around; I know the way,” said Martin. There were several doors
securely locked, but one was ajar. The three slipped in. The room
was full of piney odours from the banked-up platform. High up
behind the seats for the graduates a dozen or more boys and girls
were fastening festoons of flowers above a solid wall of green. Kid
had never seen anything of the kind before. He stared at the
sawdust on the floor which muffled their footsteps, at the semi-circle
of raised seats which were soon to be filled with mountain people,
then back again to the hurrying boys and girls in front.
“If there isn’t Kid Shockley!” It was Abner’s voice.
“Why, hello!” called Pete, turning suddenly. “Where are the rest of
the folks?”
“Come up here, Kid,” called out Talitha. “Here’s Gincy and Mallie and
all of the girls.”
In a moment Kid felt as though he had been in Bentville a week. He
was hailed cordially by all of the Goose Creek people and
immediately set to work breaking branches for trimming, and
hanging banners under the direction of Lalla. “We’ve got to be
awfully quiet,” she whispered. “It’s only a half-hour before the doors
are opened and two of the graduates have to rehearse yet.”
From his vantage ground above, Kid looked down at the critics on
the front seat and the tall, dark young man who had begun to
speak. What a contrast the clear, ringing tones were to those of the
mountain orators he had heard. For a moment he almost forgot to
help Lalla and stood, his arms full of pine branches, listening intently
to the oration.
“Hurry, Kid,” reminded Lalla. “We’ve got to drag this litter out and
just rush over to the chapel to see them form in line; there isn’t a
minute to spare.”
The musical peal of a bell and the rat-tat-tat of a drum decided the
matter. In less than five minutes the two were crossing the campus
in the rear of a number of stragglers who were hurrying to see the
long procession begin its march.
XVIII
COMMENCEMENT TIME AT
BENTVILLE

Talitha, from her room in the hall, saw the oxen toiling up the hill
just as the chapel bell was ringing. She had rushed over from the
Tabernacle to dress and get back before the lines were formed. In
fifteen minutes the bell would begin to toll and the procession start.
Her father and mother must not miss it. She opened the door and
sped down the corridor to Gincy’s room.
“Girls,” she called out, pounding on the door insistently, “the folks
are almost here. Can’t one of you go down and bring them up to
my room—your mother and my mother, Gincy? The rest can go on;
you can tell them where to hitch.”
Gincy needed no second bidding; she fairly flew downstairs and out
of doors. At the side gate she stood for a moment and peered into
the faces of the crowd. Presently she spied the objects of her
search. The big red ox and the one with the white star on his
forehead were coming her way. Sudie and Billy waved their hands,
her father smiled, and Sam Coyle’s indolent figure seemed to grow in
stature. Only the two sunbonneted women on the back seat
appeared quiet and indifferent, but Gincy knew that inwardly they
were far from it.
“Talitha saw you from her room,” she said after the first greeting.
“Jump right out and we’ll go up there; she’s rushing to get ready for
the exercises and there are only a few minutes left.”
Gincy hurried them through the crowd and into the dormitory hall,
which was alive with girls greeting friends and showing them around
through the various rooms. Her mother and Mrs. Coyle were
allowed one peep into the office of the dean, and the big east
parlour with its Colonial furniture and handsome pictures—gifts from
wealthy New England people—then they were whisked upstairs and
into Number 45 to receive a warm greeting from Talitha.
“How do you like it?” she asked, seating them near the open
windows. “You can look all around while Gincy’s hooking my dress.”
Below, were the long, well-watered rows of the college garden—a
wonderful sight to eyes accustomed to the small, dried-up mountain
patch of vegetables.
“’Tis a sightly place,” remarked Mrs. Gooch, her face alive with
interest.
Mrs. Coyle nodded. “And fraish air kin pass through ter let out all
the odours,” her mind evidently intent on the airy location of the
room. Then she glanced at the white tucked dress lying on the
lower berth of the double-decker.
Her daughter followed the gaze. “Look at Gincy’s; hers has more
tucks.” Talitha slipped the princess gown over her head, all the while
smiling delightedly at the amazement in the faces of her guests.
They plied her with questions. How did she get in all those little
pleats? Who helped her cut and fit it? Couldn’t they visit the
sewing-room? To which Talitha responded as eagerly. “There, I’m
almost ready; we’ll go on the first stroke of the last bell. After the
exercises we’ll have dinner, and then I’m bound to show you
everything on the grounds.”
“Look out of this window,” said Gincy, pointing to a stretch of trailing
plants on the south side of the house. “Strawberries! Aren’t they
splendid? Father’s got to have some just like them.”
“Abner and Martin have learned a lot about horticulture; they’ll tend
to things,” said Talitha, noticing the look on her mother’s face which
seemed to say as plainly as words: “Your father wouldn’t find time
for anything of the kind.”
At the first stroke of the last bell, the four descended the stairs and
followed the crowd going in the direction of the Tabernacle. The
college band in bright, new uniforms, was playing a lively air near
the chapel door. From every direction the people streamed toward
it. A long line of the faculty and college graduates was being rapidly
formed; each of the latter wearing a band of purple and gold around
the left arm. For the most part they were simply dressed, but in
their bearing one could detect a vast difference from the raw
material that had flocked in to Commencement.
The little group from back in the hills was only one of many who
looked with proud, expectant eyes toward the future. It would be a
great day when one of their number stood in that long line waiting
for the honours which were to crown faithful endeavour. Talitha was
glad to discover her father looking with pleased interest at the young
faces so full of promise. Her one desire had been to make him see
the difference between those who had had advantages, and the
boys and girls, who, without education, were living dull, cramped
lives in the mountains.
Suddenly the lively air changed, and a hundred young voices took up
the refrain: “We march, we march, to victory—”
Mrs. Coyle’s eyes filled as the ranks went sweeping by. She could
hardly see to follow them, but Talitha’s strong arm supported her,
and, heading the folks from Goose Creek, they filed into the
Tabernacle and sat down with the great crowd who had already
assembled.
A great hush followed the prayer. Gincy watched her father and
mother keenly as the Hallelujah Chorus pealed forth; then she gave
Talitha one quick, triumphant glance. Their faces were full of
wonder and pleasure, and Sam Coyle’s stolid countenance wore a
look of startled interest, the like of which she had never seen before.
One by one the graduates took their places for the brief time allotted
them. They spoke in loud, clear voices, but Sam Coyle seemed
hardly to understand, until a dark-haired girl began about “The Land
of Appalachia.” She gave the history of the mountain people, how,
shut back in the hills, they were behind the rest of the world. What
wonderful resources were right at hand if they would only wake up
and use them. How education meant changing the home life and
giving more to the girls and boys which would end in a better life for
the parents.
The hungry look on Mrs. Coyle’s face fairly devoured the speaker.
Already she was reaping her reward, and visions of Goose Creek,
alive to its sore need of an education, blotted out the great audience
around her. She sat almost motionless throughout the exercises.
Children cried, people came and went, the band played “Dixie”; it
was greeted noisily. It played again. This time it was “America,” and
a flutter of white handkerchiefs came from where the teachers sat;
then they arose, and somehow in a minute the crowd from Goose
Creek found themselves standing, too. Mrs. Coyle’s eyes were
moist, and Dan Gooch swallowed a troublesome lump in his throat.
Billy and Sudie looked awed and timid, yet they quivered with
delight, and Gincy, her arms resting lightly upon their shoulders, felt
the quiver and held them closer.
The crowd poured out and melted into groups which gathered
around well-filled baskets, or ate sandwiches, and bananas, and
drank lemonade at the big stand near the library. “If we could only
invite you over to the Hall,” said Gincy regretfully. “We tried to get
you in, but Miss Denman says she can hardly find room for the
company at the two new tables. Commencement is a great day.”
“I reckon we can do what most of the strangers air doin’—eat our
own vittles; they’ll be plumb spoiled if we don’t,” said Dan Gooch
with mock severity. “Come on, chil’ren,” to Billy and Sudie.
“Hit beats anythin’ I ever saw!” exclaimed Sam Coyle, ignoring his
neighbour’s last remark. “I didn’t hone ter come—at fust—that crap
in the south cove needs a powerful lot o’ tendin’, but I ’lowed
’twould be a pritty day, an’ Tally’d feel mightily disapinted if I didn’t.”
“Of course I would, father,” said Talitha, her eyes fixed on her
mother’s face. “You’ll not be sorry you came, either, there’s so much
to see after dinner.” And she started off arm in arm with Gincy, too
happy over her mother’s evident pleasure and her father’s sudden
interest to think of that old excuse—the neglected “crap” in the
south cove.
“Hold on,” called Talitha as Kid Shackley came within hailing
distance. “Having a good time?”
“You bet!” was the emphatic response. “I’ve cut loose and am doin’
hit by myself. Seen the folks? They have the stuff to eat.”
Talitha pointed back to the throng under the oak trees. “They’ve
just gone. You’ll catch them before they get fairly started eating if
you hurry.”
“Oh, Tally,” said Gincy as Kid dodged from view behind the crowd of
vehicles, his boyish head held high, “isn’t Commencement just
grand! I’m so happy over everything—Abner’s new suit, and the
folks coming, and—honey, your daddy thinks Bentville is all right;
he’ll never say another word against it, I know.”
Talitha nodded. Her face was radiant and she squeezed Gincy’s
hand. “And there’s Kid, he acts so different; just wild over
everything here. I’m sure he’ll be in school next year, too. That’s
the five-minute bell now; we’ll have to eat fast and get back. I’m
just crazy to see father’s face when he gets into the Industrial
Building.”
“And mother’s when she sees the Homespun Fair; she’ll go wild over
the rugs, I’m sure.”
Back under the trees groups of people were refreshing themselves.
The sun flecked the broad backs of the oxen feeding from the rear
end of the jolt wagons. The mules were sleepily warding off the
flies. A few horses stamped restlessly. And on each side of the
driveway was a mass of life and colour enveloped in the fragrant air
of June. Under its dominating spell, the Goose Creek folks sat until
the mass of humanity began to move; only the babies slept, guarded
by their mothers.
As though suddenly roused to action, the young people began to
walk back and forth through the wooded space, some aimlessly,
others with a definite objective point in view. From the chapel
tower, the group from Goose Creek could hear a voice inviting
everybody to come up and see the surrounding country.
“That’s Martin,” said Kid. “He’s got what he names a megaphone.
I’d call hit a horn-a whopper. You kin hear hit a mile, I’ll bet; I’m
goin’ up after a spell ter he’p him out—thar come the gals.”
“They’re just pouring into the Homespun Fair,” said Gincy, coming up
breathless. “We’ve almost run so you wouldn’t get crowded out
entirely. Sudie and Billy’d better come with me and get some
lemonade at the stand; Talitha’s waiting over there for the rest of
you.”
“I’d like ter see some kiverlids thet can beat mammy’s,” said Dan
Gooch as they walked briskly along in the direction indicated by
Gincy.
“I don’t reckon as how you will,” responded his wife. “She was hard
ter beat.”
They turned into the arched entrance of a big, brick building and
elbowed through the crowd toward a large room indicated by the
guides. Once inside, Mrs. Coyle drew a quick breath of pleased
astonishment. Long tables down the centre of the room were
covered with linen squares of familiar patterns. There were also
rugs and draperies, and innumerable articles of unique home
workmanship. The walls were hung with “kiverlids” and quilts of
brilliant patterns. The Rising Sun, Indian Feather, Fruit Basket, and
many others showed to the best advantage in the well-lighted place.
Sam Coyle found his way to a table covered with splint baskets.
“Look here,” he said, beckoning to Talitha and pointing to the price-
mark on a medium sized one. “Seventy-five cents is a heap of
money fer thet; I reckon they won’t sell nary a one.”
But Sam Coyle reckoned in vain, for Talitha showed him the little tag
marked “Sold” tied to the opposite side of the handle; her eyes
sparkling at his look of amazement. “I used ter make toler’ble fair
ones myself, years back,” he said, examining it carefully.
Mrs. Gooch dropped into a splint-bottomed rocker in front of a
gorgeous red and green quilt. She was studying the price-mark and
the pattern. Ten dollars seemed an immense amount of money to
pay for it. She beckoned to Mrs. Coyle, who was fingering the
linen. “What d’ye think o’ thet?” she asked.
Her neighbour stepped back slowly, viewing the quilt from all points
of vantage. “Yourn is a heap purtier, but this hez more fine stitches,”
she remarked at last judicially.
“Mebbe hit hez, but hit tuk more fine pieces fer ourn, an’ I’d be
proud ter git half as much.” Mrs. Gooch was thinking of Sudie and
Billy, who would soon be ready for Bentville. Here was an
unexpected source of revenue.
One by one Mrs. Coyle examined the squares of linen with a
triumphant feeling. All day her heart had been sinking at the
thought of her ignorance. She had been bewildered and
overwhelmed by this new world of opportunity and knowledge. Now
she experienced a quick return of self-respect as she heard well-
dressed visitors exclaim in admiration, and saw the ready sale of the
linen. She not only knew the patterns, but had worked out some
original designs of her own. Here was surely a way to earn more
money.
It was fully twenty minutes later when Gincy came panting in
without Sudie and Billy. “They’ve found Pete and Isaac,” she
announced, “and they’re going to the top of the tower. They’ll meet
us somewhere near the Industrial Building. Come on.”
It was only a short distance, but every step was blocked by groups
of visitors, lemonade stands, amateur photographers, venders of
patent medicines. A wrinkled, toothless old woman sat close to the
path smoking her pipe. She wore a black calico dress and
sunbonnet, and black wool mitts. Gincy drew a long breath and
thought, for the first time in her life, what it meant to grow old like
that.
“Here we are! There’s an awful crowd, but we’ll manage to see
things somehow.” People were pushing their way into the long
building and filling the rooms on either side of the hall. “Let’s show
them the cooking first,” said Talitha as Gincy started for the sewing
department.
Mrs. Coyle edged her way to the glass cases in the centre of the
room. They were filled with all kinds of eatables—salads, delicious
looking rolls, pies, puddings, and chicken done to a turn. It took
some time to convince her that everything was cooked in those
queer-looking boxes. “Fireless cookers!” she exclaimed
incredulously. “It do beat everythin’, Tally, how they do things here.”
“I can make one for you, mother, if Martin can’t find time; it may not
look just like the ones here, but it will work splendidly, I know.”
“Shore?” asked her mother doubtfully. “I’d be proud ter hev one.”
The men folks seemed equally interested. They gazed at the canned
fruit in the open cupboards, at the model table set for four, and were
quite unwilling to leave when the boys came to take them to the
Sloyd room.
The hall upstairs was crowded, there were so many things to see in
the different rooms. Mrs. Gooch kept an eye out for Billy and Sudie,
who had not put in an appearance.
“They’ll be in the Sloyd room, I know,” Talitha assured her. “The
Shackley boys fairly live there; Abner and Martin wouldn’t be much
better if they weren’t taking extra studies.”
The crowd in the room was beginning to thin a little. A few were
still buying bookracks, paper knives, and other small things which
were for sale.
Sam Coyle could hardly believe that the students had made
everything on exhibition. He halted in front of a big, leather-covered
chair. “Look here, you-all,” he said, sinking down with characteristic
indolence. “Hit sets powerful easy, too. Thet’s what I’d hone ter do
if I war young; we wouldn’t live like we do now, but thet’s plumb
past mendin’.”
“No, it isn’t, father, if you’ll let Martin help you,” Talitha answered
decidedly. “I always knew you were handy with tools, and we’re
going to have some—there’s Sudie now, Mrs. Gooch; they’re all over
behind that stack of things in the corner. Come on.”
“Look, mammy!” announced Billy as he pointed to a small oak table,
polished to an astonishing perfection. “Abner did hit, and here’s
somethin’ else,” dragging her farther along toward a wide, hanging
shelf. “Hit’s fer books, and I’m ter have one eend.” He fairly danced
with happiness, and Mrs. Gooch turned to her husband and son a
face full of pride. Not one sacrifice which she had made for her
children seemed worth remembering now.
It was Mrs. Coyle’s turn for self-gratification when Martin showed her
his book-case and seat which were to be carried home in the jolt
wagon. “I’ve some books to put into it, too. Professor Johns is
going to let me take charge of the travelling library in a week or two,
then we’ll have some good times at Goose Creek. Nights, after
supper is over, we’ll take turns reading. Tally and I have it all
planned out.”
The Shackley boys were not to be outdone by Martin and Abner.
They showed their planting pins, clock case, and umbrella rack with
much pride. Kid examined everything carefully for the fourth or fifth
time. “I’m comin’ ter Bentville next year,” he announced decidedly.
“I’m goin’ ter work in the wood-working department; they want
more boys.”
Dan Gooch patted the broad back. “See you do, son. Your pappy
kin git plenty of husky fellers fer blacksmithin’ ’thout usin’ brains,
and you’ve got ’em.” Kid blushed and eyed Sam Coyle furtively,
waiting for the accustomed gibes, but they did not come. The latter
individual was apparently engrossed in a mental estimation of the
height of the huge standpipe in plain sight of the back windows.
“If thar ain’t the Twilligers!” he said, looking around suddenly. “I’d
an idee they’d drapped off’n the fur aidge of the yarth ’fore this, and
had a notion ter begin sarchin’ fer ’em.”
Piny, radiant in a new pink lawn, with her father and mother in tow,
bore directly down upon them.
“Here you are!” she exclaimed. “I reckoned the boys had tolled you
over this way for the wind-up. Look here, pappy, what do you think
of this, and this?” pointing to the various pieces of furniture.
Zeb Twilliger stared open-mouthed to the unconcealed delight of the
young folks. It took some time to convince him and his wife that the
boys had really done the work. “Wal, wal, I swan!” he ejaculated at
last, peering down at each article critically.
“Ye’d better give ’em a lift gittin’ hit home,” suggested Mrs. Twilliger
generously, and Zeb agreed.
A white cloud of dust hovered over the long procession which filed
homeward, back to the hills. Talitha waved good-bye as, one by
one, the college buildings were lost to sight, and Kid—with Abner
behind him in the saddle—voiced the general sentiment of the crowd
when he turned to shout cheerily:
“Hurrah fer Bentville and the Goose Creek folks who’ll be thar next
year!”

PRINTED IN THE UNITED STATES OF AMERICA


*** END OF THE PROJECT GUTENBERG EBOOK GOOSE CREEK
FOLKS: A STORY OF THE KENTUCKY MOUNTAINS ***

Updated editions will replace the previous one—the old editions will
be renamed.

Creating the works from print editions not protected by U.S.


copyright law means that no one owns a United States copyright in
these works, so the Foundation (and you!) can copy and distribute it
in the United States without permission and without paying
copyright royalties. Special rules, set forth in the General Terms of
Use part of this license, apply to copying and distributing Project
Gutenberg™ electronic works to protect the PROJECT GUTENBERG™
concept and trademark. Project Gutenberg is a registered trademark,
and may not be used if you charge for an eBook, except by following
the terms of the trademark license, including paying royalties for use
of the Project Gutenberg trademark. If you do not charge anything
for copies of this eBook, complying with the trademark license is
very easy. You may use this eBook for nearly any purpose such as
creation of derivative works, reports, performances and research.
Project Gutenberg eBooks may be modified and printed and given
away—you may do practically ANYTHING in the United States with
eBooks not protected by U.S. copyright law. Redistribution is subject
to the trademark license, especially commercial redistribution.

START: FULL LICENSE


THE FULL PROJECT GUTENBERG LICENSE
PLEASE READ THIS BEFORE YOU DISTRIBUTE OR USE THIS WORK

To protect the Project Gutenberg™ mission of promoting the free


distribution of electronic works, by using or distributing this work (or
any other work associated in any way with the phrase “Project
Gutenberg”), you agree to comply with all the terms of the Full
Project Gutenberg™ License available with this file or online at
www.gutenberg.org/license.

Section 1. General Terms of Use and


Redistributing Project Gutenberg™
electronic works
1.A. By reading or using any part of this Project Gutenberg™
electronic work, you indicate that you have read, understand, agree
to and accept all the terms of this license and intellectual property
(trademark/copyright) agreement. If you do not agree to abide by all
the terms of this agreement, you must cease using and return or
destroy all copies of Project Gutenberg™ electronic works in your
possession. If you paid a fee for obtaining a copy of or access to a
Project Gutenberg™ electronic work and you do not agree to be
bound by the terms of this agreement, you may obtain a refund
from the person or entity to whom you paid the fee as set forth in
paragraph 1.E.8.

1.B. “Project Gutenberg” is a registered trademark. It may only be


used on or associated in any way with an electronic work by people
who agree to be bound by the terms of this agreement. There are a
few things that you can do with most Project Gutenberg™ electronic
works even without complying with the full terms of this agreement.
See paragraph 1.C below. There are a lot of things you can do with
Project Gutenberg™ electronic works if you follow the terms of this
agreement and help preserve free future access to Project
Gutenberg™ electronic works. See paragraph 1.E below.
1.C. The Project Gutenberg Literary Archive Foundation (“the
Foundation” or PGLAF), owns a compilation copyright in the
collection of Project Gutenberg™ electronic works. Nearly all the
individual works in the collection are in the public domain in the
United States. If an individual work is unprotected by copyright law
in the United States and you are located in the United States, we do
not claim a right to prevent you from copying, distributing,
performing, displaying or creating derivative works based on the
work as long as all references to Project Gutenberg are removed. Of
course, we hope that you will support the Project Gutenberg™
mission of promoting free access to electronic works by freely
sharing Project Gutenberg™ works in compliance with the terms of
this agreement for keeping the Project Gutenberg™ name associated
with the work. You can easily comply with the terms of this
agreement by keeping this work in the same format with its attached
full Project Gutenberg™ License when you share it without charge
with others.

1.D. The copyright laws of the place where you are located also
govern what you can do with this work. Copyright laws in most
countries are in a constant state of change. If you are outside the
United States, check the laws of your country in addition to the
terms of this agreement before downloading, copying, displaying,
performing, distributing or creating derivative works based on this
work or any other Project Gutenberg™ work. The Foundation makes
no representations concerning the copyright status of any work in
any country other than the United States.

1.E. Unless you have removed all references to Project Gutenberg:

1.E.1. The following sentence, with active links to, or other


immediate access to, the full Project Gutenberg™ License must
appear prominently whenever any copy of a Project Gutenberg™
work (any work on which the phrase “Project Gutenberg” appears,
or with which the phrase “Project Gutenberg” is associated) is
accessed, displayed, performed, viewed, copied or distributed:
This eBook is for the use of anyone anywhere in the United
States and most other parts of the world at no cost and with
almost no restrictions whatsoever. You may copy it, give it away
or re-use it under the terms of the Project Gutenberg License
included with this eBook or online at www.gutenberg.org. If you
are not located in the United States, you will have to check the
laws of the country where you are located before using this
eBook.

1.E.2. If an individual Project Gutenberg™ electronic work is derived


from texts not protected by U.S. copyright law (does not contain a
notice indicating that it is posted with permission of the copyright
holder), the work can be copied and distributed to anyone in the
United States without paying any fees or charges. If you are
redistributing or providing access to a work with the phrase “Project
Gutenberg” associated with or appearing on the work, you must
comply either with the requirements of paragraphs 1.E.1 through
1.E.7 or obtain permission for the use of the work and the Project
Gutenberg™ trademark as set forth in paragraphs 1.E.8 or 1.E.9.

1.E.3. If an individual Project Gutenberg™ electronic work is posted


with the permission of the copyright holder, your use and distribution
must comply with both paragraphs 1.E.1 through 1.E.7 and any
additional terms imposed by the copyright holder. Additional terms
will be linked to the Project Gutenberg™ License for all works posted
with the permission of the copyright holder found at the beginning
of this work.

1.E.4. Do not unlink or detach or remove the full Project


Gutenberg™ License terms from this work, or any files containing a
part of this work or any other work associated with Project
Gutenberg™.

1.E.5. Do not copy, display, perform, distribute or redistribute this


electronic work, or any part of this electronic work, without
prominently displaying the sentence set forth in paragraph 1.E.1
with active links or immediate access to the full terms of the Project
Gutenberg™ License.

1.E.6. You may convert to and distribute this work in any binary,
compressed, marked up, nonproprietary or proprietary form,
including any word processing or hypertext form. However, if you
provide access to or distribute copies of a Project Gutenberg™ work
in a format other than “Plain Vanilla ASCII” or other format used in
the official version posted on the official Project Gutenberg™ website
(www.gutenberg.org), you must, at no additional cost, fee or
expense to the user, provide a copy, a means of exporting a copy, or
a means of obtaining a copy upon request, of the work in its original
“Plain Vanilla ASCII” or other form. Any alternate format must
include the full Project Gutenberg™ License as specified in
paragraph 1.E.1.

1.E.7. Do not charge a fee for access to, viewing, displaying,


performing, copying or distributing any Project Gutenberg™ works
unless you comply with paragraph 1.E.8 or 1.E.9.

1.E.8. You may charge a reasonable fee for copies of or providing


access to or distributing Project Gutenberg™ electronic works
provided that:

• You pay a royalty fee of 20% of the gross profits you derive
from the use of Project Gutenberg™ works calculated using the
method you already use to calculate your applicable taxes. The
fee is owed to the owner of the Project Gutenberg™ trademark,
but he has agreed to donate royalties under this paragraph to
the Project Gutenberg Literary Archive Foundation. Royalty
payments must be paid within 60 days following each date on
which you prepare (or are legally required to prepare) your
periodic tax returns. Royalty payments should be clearly marked
as such and sent to the Project Gutenberg Literary Archive
Foundation at the address specified in Section 4, “Information
about donations to the Project Gutenberg Literary Archive
Foundation.”

• You provide a full refund of any money paid by a user who


notifies you in writing (or by e-mail) within 30 days of receipt
that s/he does not agree to the terms of the full Project
Gutenberg™ License. You must require such a user to return or
destroy all copies of the works possessed in a physical medium
and discontinue all use of and all access to other copies of
Project Gutenberg™ works.

• You provide, in accordance with paragraph 1.F.3, a full refund of


any money paid for a work or a replacement copy, if a defect in
the electronic work is discovered and reported to you within 90
days of receipt of the work.

• You comply with all other terms of this agreement for free
distribution of Project Gutenberg™ works.

1.E.9. If you wish to charge a fee or distribute a Project Gutenberg™


electronic work or group of works on different terms than are set
forth in this agreement, you must obtain permission in writing from
the Project Gutenberg Literary Archive Foundation, the manager of
the Project Gutenberg™ trademark. Contact the Foundation as set
forth in Section 3 below.

1.F.

1.F.1. Project Gutenberg volunteers and employees expend


considerable effort to identify, do copyright research on, transcribe
and proofread works not protected by U.S. copyright law in creating
the Project Gutenberg™ collection. Despite these efforts, Project
Gutenberg™ electronic works, and the medium on which they may
be stored, may contain “Defects,” such as, but not limited to,
incomplete, inaccurate or corrupt data, transcription errors, a
copyright or other intellectual property infringement, a defective or
damaged disk or other medium, a computer virus, or computer
codes that damage or cannot be read by your equipment.

1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except for


the “Right of Replacement or Refund” described in paragraph 1.F.3,
the Project Gutenberg Literary Archive Foundation, the owner of the
Project Gutenberg™ trademark, and any other party distributing a
Project Gutenberg™ electronic work under this agreement, disclaim
all liability to you for damages, costs and expenses, including legal
fees. YOU AGREE THAT YOU HAVE NO REMEDIES FOR
NEGLIGENCE, STRICT LIABILITY, BREACH OF WARRANTY OR
BREACH OF CONTRACT EXCEPT THOSE PROVIDED IN PARAGRAPH
1.F.3. YOU AGREE THAT THE FOUNDATION, THE TRADEMARK
OWNER, AND ANY DISTRIBUTOR UNDER THIS AGREEMENT WILL
NOT BE LIABLE TO YOU FOR ACTUAL, DIRECT, INDIRECT,
CONSEQUENTIAL, PUNITIVE OR INCIDENTAL DAMAGES EVEN IF
YOU GIVE NOTICE OF THE POSSIBILITY OF SUCH DAMAGE.

1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you


discover a defect in this electronic work within 90 days of receiving
it, you can receive a refund of the money (if any) you paid for it by
sending a written explanation to the person you received the work
from. If you received the work on a physical medium, you must
return the medium with your written explanation. The person or
entity that provided you with the defective work may elect to provide
a replacement copy in lieu of a refund. If you received the work
electronically, the person or entity providing it to you may choose to
give you a second opportunity to receive the work electronically in
lieu of a refund. If the second copy is also defective, you may
demand a refund in writing without further opportunities to fix the
problem.

1.F.4. Except for the limited right of replacement or refund set forth
in paragraph 1.F.3, this work is provided to you ‘AS-IS’, WITH NO
OTHER WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.

1.F.5. Some states do not allow disclaimers of certain implied


warranties or the exclusion or limitation of certain types of damages.
If any disclaimer or limitation set forth in this agreement violates the
law of the state applicable to this agreement, the agreement shall be
interpreted to make the maximum disclaimer or limitation permitted
by the applicable state law. The invalidity or unenforceability of any
provision of this agreement shall not void the remaining provisions.

1.F.6. INDEMNITY - You agree to indemnify and hold the Foundation,


the trademark owner, any agent or employee of the Foundation,
anyone providing copies of Project Gutenberg™ electronic works in
accordance with this agreement, and any volunteers associated with
the production, promotion and distribution of Project Gutenberg™
electronic works, harmless from all liability, costs and expenses,
including legal fees, that arise directly or indirectly from any of the
following which you do or cause to occur: (a) distribution of this or
any Project Gutenberg™ work, (b) alteration, modification, or
additions or deletions to any Project Gutenberg™ work, and (c) any
Defect you cause.

Section 2. Information about the Mission


of Project Gutenberg™
Project Gutenberg™ is synonymous with the free distribution of
electronic works in formats readable by the widest variety of
computers including obsolete, old, middle-aged and new computers.
It exists because of the efforts of hundreds of volunteers and
donations from people in all walks of life.

Volunteers and financial support to provide volunteers with the


assistance they need are critical to reaching Project Gutenberg™’s
goals and ensuring that the Project Gutenberg™ collection will
remain freely available for generations to come. In 2001, the Project
Gutenberg Literary Archive Foundation was created to provide a
secure and permanent future for Project Gutenberg™ and future
generations. To learn more about the Project Gutenberg Literary
Archive Foundation and how your efforts and donations can help,
see Sections 3 and 4 and the Foundation information page at
www.gutenberg.org.

Section 3. Information about the Project


Gutenberg Literary Archive Foundation
The Project Gutenberg Literary Archive Foundation is a non-profit
501(c)(3) educational corporation organized under the laws of the
state of Mississippi and granted tax exempt status by the Internal
Revenue Service. The Foundation’s EIN or federal tax identification
number is 64-6221541. Contributions to the Project Gutenberg
Literary Archive Foundation are tax deductible to the full extent
permitted by U.S. federal laws and your state’s laws.

The Foundation’s business office is located at 809 North 1500 West,


Salt Lake City, UT 84116, (801) 596-1887. Email contact links and up
to date contact information can be found at the Foundation’s website
and official page at www.gutenberg.org/contact

Section 4. Information about Donations to


the Project Gutenberg Literary Archive
Foundation
Project Gutenberg™ depends upon and cannot survive without
widespread public support and donations to carry out its mission of
increasing the number of public domain and licensed works that can
be freely distributed in machine-readable form accessible by the
widest array of equipment including outdated equipment. Many
small donations ($1 to $5,000) are particularly important to
maintaining tax exempt status with the IRS.

The Foundation is committed to complying with the laws regulating


charities and charitable donations in all 50 states of the United
States. Compliance requirements are not uniform and it takes a
considerable effort, much paperwork and many fees to meet and
keep up with these requirements. We do not solicit donations in
locations where we have not received written confirmation of
compliance. To SEND DONATIONS or determine the status of
compliance for any particular state visit www.gutenberg.org/donate.

While we cannot and do not solicit contributions from states where


we have not met the solicitation requirements, we know of no
prohibition against accepting unsolicited donations from donors in
such states who approach us with offers to donate.

International donations are gratefully accepted, but we cannot make


any statements concerning tax treatment of donations received from
outside the United States. U.S. laws alone swamp our small staff.

Please check the Project Gutenberg web pages for current donation
methods and addresses. Donations are accepted in a number of
other ways including checks, online payments and credit card
donations. To donate, please visit: www.gutenberg.org/donate.

Section 5. General Information About


Project Gutenberg™ electronic works
Professor Michael S. Hart was the originator of the Project
Gutenberg™ concept of a library of electronic works that could be
freely shared with anyone. For forty years, he produced and
distributed Project Gutenberg™ eBooks with only a loose network of
volunteer support.

You might also like