Annotation of GNUtools/emacs/info/emacs-15, revision 1.1

1.1     ! root        1: This is Info file ../info/emacs, produced by Makeinfo-1.49 from the
        !             2: input file emacs.texi.
        !             3: 
        !             4:    This file documents the GNU Emacs editor.
        !             5: 
        !             6:    Copyright (C) 1985, 1986, 1988, 1992 Richard M. Stallman.
        !             7: 
        !             8:    Permission is granted to make and distribute verbatim copies of this
        !             9: manual provided the copyright notice and this permission notice are
        !            10: preserved on all copies.
        !            11: 
        !            12:    Permission is granted to copy and distribute modified versions of
        !            13: this manual under the conditions for verbatim copying, provided also
        !            14: that the sections entitled "The GNU Manifesto", "Distribution" and "GNU
        !            15: General Public License" are included exactly as in the original, and
        !            16: provided that the entire resulting derived work is distributed under the
        !            17: terms of a permission notice identical to this one.
        !            18: 
        !            19:    Permission is granted to copy and distribute translations of this
        !            20: manual into another language, under the above conditions for modified
        !            21: versions, except that the sections entitled "The GNU Manifesto",
        !            22: "Distribution" and "GNU General Public License" may be included in a
        !            23: translation approved by the author instead of in the original English.
        !            24: 
        !            25: 
        !            26: File: emacs,  Node: Manifesto,  Prev: Version 19,  Up: Top
        !            27: 
        !            28: The GNU Manifesto
        !            29: *****************
        !            30: 
        !            31:    By Richard M. Stallman, 1986
        !            32: 
        !            33: What's GNU?  Gnu's Not Unix!
        !            34: ============================
        !            35: 
        !            36:    GNU, which stands for Gnu's Not Unix, is the name for the complete
        !            37: Unix-compatible software system which I am writing so that I can give it
        !            38: away free to everyone who can use it.  Several other volunteers are
        !            39: helping me.  Contributions of time, money, programs and equipment are
        !            40: greatly needed.
        !            41: 
        !            42:    So far we have an Emacs text editor with Lisp for writing editor
        !            43: commands, a source level debugger, a yacc-compatible parser generator,
        !            44: a linker, and around 35 utilities.  A shell (command interpreter) is
        !            45: nearly completed.  A new portable optimizing C compiler has compiled
        !            46: itself and may be released this year.  An initial kernel exists but
        !            47: many more features are needed to emulate Unix.  When the kernel and
        !            48: compiler are finished, it will be possible to distribute a GNU system
        !            49: suitable for program development.  We will use TeX as our text
        !            50: formatter, but an nroff is being worked on.  We will use the free,
        !            51: portable X window system as well.  After this we will add a portable
        !            52: Common Lisp, an Empire game, a spreadsheet, and hundreds of other
        !            53: things, plus on-line documentation.  We hope to supply, eventually,
        !            54: everything useful that normally comes with a Unix system, and more.
        !            55: 
        !            56:    GNU will be able to run Unix programs, but will not be identical to
        !            57: Unix. We will make all improvements that are convenient, based on our
        !            58: experience with other operating systems.  In particular, we plan to
        !            59: have longer filenames, file version numbers, a crashproof file system,
        !            60: filename completion perhaps, terminal-independent display support, and
        !            61: perhaps eventually a Lisp-based window system through which several
        !            62: Lisp programs and ordinary Unix programs can share a screen.  Both C
        !            63: and Lisp will be available as system programming languages.  We will
        !            64: try to support UUCP, MIT Chaosnet, and Internet protocols for
        !            65: communication.
        !            66: 
        !            67:    GNU is aimed initially at machines in the 68000/16000 class with
        !            68: virtual memory, because they are the easiest machines to make it run
        !            69: on.  The extra effort to make it run on smaller machines will be left
        !            70: to someone who wants to use it on them.
        !            71: 
        !            72:    To avoid horrible confusion, please pronounce the `G' in the word
        !            73: `GNU' when it is the name of this project.
        !            74: 
        !            75: Why I Must Write GNU
        !            76: ====================
        !            77: 
        !            78:    I consider that the golden rule requires that if I like a program I
        !            79: must share it with other people who like it.  Software sellers want to
        !            80: divide the users and conquer them, making each user agree not to share
        !            81: with others.  I refuse to break solidarity with other users in this
        !            82: way.  I cannot in good conscience sign a nondisclosure agreement or a
        !            83: software license agreement.  For years I worked within the Artificial
        !            84: Intelligence Lab to resist such tendencies and other inhospitalities,
        !            85: but eventually they had gone too far: I could not remain in an
        !            86: institution where such things are done for me against my will.
        !            87: 
        !            88:    So that I can continue to use computers without dishonor, I have
        !            89: decided to put together a sufficient body of free software so that I
        !            90: will be able to get along without any software that is not free.  I
        !            91: have resigned from the AI lab to deny MIT any legal excuse to prevent
        !            92: me from giving GNU away.
        !            93: 
        !            94: Why GNU Will Be Compatible with Unix
        !            95: ====================================
        !            96: 
        !            97:    Unix is not my ideal system, but it is not too bad.  The essential
        !            98: features of Unix seem to be good ones, and I think I can fill in what
        !            99: Unix lacks without spoiling them.  And a system compatible with Unix
        !           100: would be convenient for many other people to adopt.
        !           101: 
        !           102: How GNU Will Be Available
        !           103: =========================
        !           104: 
        !           105:    GNU is not in the public domain.  Everyone will be permitted to
        !           106: modify and redistribute GNU, but no distributor will be allowed to
        !           107: restrict its further redistribution.  That is to say, proprietary
        !           108: modifications will not be allowed.  I want to make sure that all
        !           109: versions of GNU remain free.
        !           110: 
        !           111: Why Many Other Programmers Want to Help
        !           112: =======================================
        !           113: 
        !           114:    I have found many other programmers who are excited about GNU and
        !           115: want to help.
        !           116: 
        !           117:    Many programmers are unhappy about the commercialization of system
        !           118: software.  It may enable them to make more money, but it requires them
        !           119: to feel in conflict with other programmers in general rather than feel
        !           120: as comrades.  The fundamental act of friendship among programmers is the
        !           121: sharing of programs; marketing arrangements now typically used
        !           122: essentially forbid programmers to treat others as friends.  The
        !           123: purchaser of software must choose between friendship and obeying the
        !           124: law.  Naturally, many decide that friendship is more important.  But
        !           125: those who believe in law often do not feel at ease with either choice. 
        !           126: They become cynical and think that programming is just a way of making
        !           127: money.
        !           128: 
        !           129:    By working on and using GNU rather than proprietary programs, we can
        !           130: be hospitable to everyone and obey the law.  In addition, GNU serves as
        !           131: an example to inspire and a banner to rally others to join us in
        !           132: sharing. This can give us a feeling of harmony which is impossible if
        !           133: we use software that is not free.  For about half the programmers I
        !           134: talk to, this is an important happiness that money cannot replace.
        !           135: 
        !           136: How You Can Contribute
        !           137: ======================
        !           138: 
        !           139:    I am asking computer manufacturers for donations of machines and
        !           140: money. I'm asking individuals for donations of programs and work.
        !           141: 
        !           142:    One consequence you can expect if you donate machines is that GNU
        !           143: will run on them at an early date.  The machines should be complete,
        !           144: ready to use systems, approved for use in a residential area, and not
        !           145: in need of sophisticated cooling or power.
        !           146: 
        !           147:    I have found very many programmers eager to contribute part-time
        !           148: work for GNU.  For most projects, such part-time distributed work would
        !           149: be very hard to coordinate; the independently-written parts would not
        !           150: work together. But for the particular task of replacing Unix, this
        !           151: problem is absent.  A complete Unix system contains hundreds of utility
        !           152: programs, each of which is documented separately.  Most interface
        !           153: specifications are fixed by Unix compatibility.  If each contributor
        !           154: can write a compatible replacement for a single Unix utility, and make
        !           155: it work properly in place of the original on a Unix system, then these
        !           156: utilities will work right when put together. Even allowing for Murphy
        !           157: to create a few unexpected problems, assembling these components will
        !           158: be a feasible task.  (The kernel will require closer communication and
        !           159: will be worked on by a small, tight group.)
        !           160: 
        !           161:    If I get donations of money, I may be able to hire a few people full
        !           162: or part time.  The salary won't be high by programmers' standards, but
        !           163: I'm looking for people for whom building community spirit is as
        !           164: important as making money.  I view this as a way of enabling dedicated
        !           165: people to devote their full energies to working on GNU by sparing them
        !           166: the need to make a living in another way.
        !           167: 
        !           168: Why All Computer Users Will Benefit
        !           169: ===================================
        !           170: 
        !           171:    Once GNU is written, everyone will be able to obtain good system
        !           172: software free, just like air.
        !           173: 
        !           174:    This means much more than just saving everyone the price of a Unix
        !           175: license. It means that much wasteful duplication of system programming
        !           176: effort will be avoided.  This effort can go instead into advancing the
        !           177: state of the art.
        !           178: 
        !           179:    Complete system sources will be available to everyone.  As a result,
        !           180: a user who needs changes in the system will always be free to make them
        !           181: himself, or hire any available programmer or company to make them for
        !           182: him.  Users will no longer be at the mercy of one programmer or company
        !           183: which owns the sources and is in sole position to make changes.
        !           184: 
        !           185:    Schools will be able to provide a much more educational environment
        !           186: by encouraging all students to study and improve the system code. 
        !           187: Harvard's computer lab used to have the policy that no program could be
        !           188: installed on the system if its sources were not on public display, and
        !           189: upheld it by actually refusing to install certain programs.  I was very
        !           190: much inspired by this.
        !           191: 
        !           192:    Finally, the overhead of considering who owns the system software
        !           193: and what one is or is not entitled to do with it will be lifted.
        !           194: 
        !           195:    Arrangements to make people pay for using a program, including
        !           196: licensing of copies, always incur a tremendous cost to society through
        !           197: the cumbersome mechanisms necessary to figure out how much (that is,
        !           198: which programs) a person must pay for.  And only a police state can
        !           199: force everyone to obey them.  Consider a space station where air must
        !           200: be manufactured at great cost: charging each breather per liter of air
        !           201: may be fair, but wearing the metered gas mask all day and all night is
        !           202: intolerable even if everyone can afford to pay the air bill.  And the
        !           203: TV cameras everywhere to see if you ever take the mask off are
        !           204: outrageous.  It's better to support the air plant with a head tax and
        !           205: chuck the masks.
        !           206: 
        !           207:    Copying all or parts of a program is as natural to a programmer as
        !           208: breathing, and as productive.  It ought to be as free.
        !           209: 
        !           210: Some Easily Rebutted Objections to GNU's Goals
        !           211: ==============================================
        !           212: 
        !           213:      "Nobody will use it if it is free, because that means they can't
        !           214:      rely on any support."
        !           215: 
        !           216:      "You have to charge for the program to pay for providing the
        !           217:      support."
        !           218: 
        !           219:    If people would rather pay for GNU plus service than get GNU free
        !           220: without service, a company to provide just service to people who have
        !           221: obtained GNU free ought to be profitable.
        !           222: 
        !           223:    We must distinguish between support in the form of real programming
        !           224: work and mere handholding.  The former is something one cannot rely on
        !           225: from a software vendor.  If your problem is not shared by enough
        !           226: people, the vendor will tell you to get lost.
        !           227: 
        !           228:    If your business needs to be able to rely on support, the only way
        !           229: is to have all the necessary sources and tools.  Then you can hire any
        !           230: available person to fix your problem; you are not at the mercy of any
        !           231: individual. With Unix, the price of sources puts this out of
        !           232: consideration for most businesses.  With GNU this will be easy.  It is
        !           233: still possible for there to be no available competent person, but this
        !           234: problem cannot be blamed on distribution arrangements.  GNU does not
        !           235: eliminate all the world's problems, only some of them.
        !           236: 
        !           237:    Meanwhile, the users who know nothing about computers need
        !           238: handholding: doing things for them which they could easily do
        !           239: themselves but don't know how.
        !           240: 
        !           241:    Such services could be provided by companies that sell just
        !           242: hand-holding and repair service.  If it is true that users would rather
        !           243: spend money and get a product with service, they will also be willing
        !           244: to buy the service having got the product free.  The service companies
        !           245: will compete in quality and price; users will not be tied to any
        !           246: particular one.  Meanwhile, those of us who don't need the service
        !           247: should be able to use the program without paying for the service.
        !           248: 
        !           249:      "You cannot reach many people without advertising, and you must
        !           250:      charge for the program to support that."
        !           251: 
        !           252:      "It's no use advertising a program people can get free."
        !           253: 
        !           254:    There are various forms of free or very cheap publicity that can be
        !           255: used to inform numbers of computer users about something like GNU.  But
        !           256: it may be true that one can reach more microcomputer users with
        !           257: advertising.  If this is really so, a business which advertises the
        !           258: service of copying and mailing GNU for a fee ought to be successful
        !           259: enough to pay for its advertising and more.  This way, only the users
        !           260: who benefit from the advertising pay for it.
        !           261: 
        !           262:    On the other hand, if many people get GNU from their friends, and
        !           263: such companies don't succeed, this will show that advertising was not
        !           264: really necessary to spread GNU.  Why is it that free market advocates
        !           265: don't want to let the free market decide this?
        !           266: 
        !           267:      "My company needs a proprietary operating system to get a
        !           268:      competitive edge."
        !           269: 
        !           270:    GNU will remove operating system software from the realm of
        !           271: competition. You will not be able to get an edge in this area, but
        !           272: neither will your competitors be able to get an edge over you.  You and
        !           273: they will compete in other areas, while benefitting mutually in this
        !           274: one.  If your business is selling an operating system, you will not
        !           275: like GNU, but that's tough on you.  If your business is something else,
        !           276: GNU can save you from being pushed into the expensive business of
        !           277: selling operating systems.
        !           278: 
        !           279:    I would like to see GNU development supported by gifts from many
        !           280: manufacturers and users, reducing the cost to each.
        !           281: 
        !           282:      "Don't programmers deserve a reward for their creativity?"
        !           283: 
        !           284:    If anything deserves a reward, it is social contribution. 
        !           285: Creativity can be a social contribution, but only in so far as society
        !           286: is free to use the results.  If programmers deserve to be rewarded for
        !           287: creating innovative programs, by the same token they deserve to be
        !           288: punished if they restrict the use of these programs.
        !           289: 
        !           290:      "Shouldn't a programmer be able to ask for a reward for his
        !           291:      creativity?"
        !           292: 
        !           293:    There is nothing wrong with wanting pay for work, or seeking to
        !           294: maximize one's income, as long as one does not use means that are
        !           295: destructive.  But the means customary in the field of software today
        !           296: are based on destruction.
        !           297: 
        !           298:    Extracting money from users of a program by restricting their use of
        !           299: it is destructive because the restrictions reduce the amount and the
        !           300: ways that the program can be used.  This reduces the amount of wealth
        !           301: that humanity derives from the program.  When there is a deliberate
        !           302: choice to restrict, the harmful consequences are deliberate destruction.
        !           303: 
        !           304:    The reason a good citizen does not use such destructive means to
        !           305: become wealthier is that, if everyone did so, we would all become
        !           306: poorer from the mutual destructiveness.  This is Kantian ethics; or,
        !           307: the Golden Rule. Since I do not like the consequences that result if
        !           308: everyone hoards information, I am required to consider it wrong for one
        !           309: to do so. Specifically, the desire to be rewarded for one's creativity
        !           310: does not justify depriving the world in general of all or part of that
        !           311: creativity.
        !           312: 
        !           313:      "Won't programmers starve?"
        !           314: 
        !           315:    I could answer that nobody is forced to be a programmer.  Most of us
        !           316: cannot manage to get any money for standing on the street and making
        !           317: faces.  But we are not, as a result, condemned to spend our lives
        !           318: standing on the street making faces, and starving.  We do something
        !           319: else.
        !           320: 
        !           321:    But that is the wrong answer because it accepts the questioner's
        !           322: implicit assumption: that without ownership of software, programmers
        !           323: cannot possibly be paid a cent.  Supposedly it is all or nothing.
        !           324: 
        !           325:    The real reason programmers will not starve is that it will still be
        !           326: possible for them to get paid for programming; just not paid as much as
        !           327: now.
        !           328: 
        !           329:    Restricting copying is not the only basis for business in software. 
        !           330: It is the most common basis because it brings in the most money.  If it
        !           331: were prohibited, or rejected by the customer, software business would
        !           332: move to other bases of organization which are now used less often. 
        !           333: There are always numerous ways to organize any kind of business.
        !           334: 
        !           335:    Probably programming will not be as lucrative on the new basis as it
        !           336: is now.  But that is not an argument against the change.  It is not
        !           337: considered an injustice that sales clerks make the salaries that they
        !           338: now do.  If programmers made the same, that would not be an injustice
        !           339: either.  (In practice they would still make considerably more than
        !           340: that.)
        !           341: 
        !           342:      "Don't people have a right to control how their creativity is
        !           343:      used?"
        !           344: 
        !           345:    "Control over the use of one's ideas" really constitutes control over
        !           346: other people's lives; and it is usually used to make their lives more
        !           347: difficult.
        !           348: 
        !           349:    People who have studied the issue of intellectual property rights
        !           350: carefully (such as lawyers) say that there is no intrinsic right to
        !           351: intellectual property.  The kinds of supposed intellectual property
        !           352: rights that the government recognizes were created by specific acts of
        !           353: legislation for specific purposes.
        !           354: 
        !           355:    For example, the patent system was established to encourage
        !           356: inventors to disclose the details of their inventions.  Its purpose was
        !           357: to help society rather than to help inventors.  At the time, the life
        !           358: span of 17 years for a patent was short compared with the rate of
        !           359: advance of the state of the art.  Since patents are an issue only among
        !           360: manufacturers, for whom the cost and effort of a license agreement are
        !           361: small compared with setting up production, the patents often do not do
        !           362: much harm.  They do not obstruct most individuals who use patented
        !           363: products.
        !           364: 
        !           365:    The idea of copyright did not exist in ancient times, when authors
        !           366: frequently copied other authors at length in works of non-fiction.  This
        !           367: practice was useful, and is the only way many authors' works have
        !           368: survived even in part.  The copyright system was created expressly for
        !           369: the purpose of encouraging authorship.  In the domain for which it was
        !           370: invented--books, which could be copied economically only on a printing
        !           371: press--it did little harm, and did not obstruct most of the individuals
        !           372: who read the books.
        !           373: 
        !           374:    All intellectual property rights are just licenses granted by society
        !           375: because it was thought, rightly or wrongly, that society as a whole
        !           376: would benefit by granting them.  But in any particular situation, we
        !           377: have to ask: are we really better off granting such license?  What kind
        !           378: of act are we licensing a person to do?
        !           379: 
        !           380:    The case of programs today is very different from that of books a
        !           381: hundred years ago.  The fact that the easiest way to copy a program is
        !           382: from one neighbor to another, the fact that a program has both source
        !           383: code and object code which are distinct, and the fact that a program is
        !           384: used rather than read and enjoyed, combine to create a situation in
        !           385: which a person who enforces a copyright is harming society as a whole
        !           386: both materially and spiritually; in which a person should not do so
        !           387: regardless of whether the law enables him to.
        !           388: 
        !           389:      "Competition makes things get done better."
        !           390: 
        !           391:    The paradigm of competition is a race: by rewarding the winner, we
        !           392: encourage everyone to run faster.  When capitalism really works this
        !           393: way, it does a good job; but its defenders are wrong in assuming it
        !           394: always works this way.  If the runners forget why the reward is offered
        !           395: and become intent on winning, no matter how, they may find other
        !           396: strategies--such as, attacking other runners.  If the runners get into
        !           397: a fist fight, they will all finish late.
        !           398: 
        !           399:    Proprietary and secret software is the moral equivalent of runners
        !           400: in a fist fight.  Sad to say, the only referee we've got does not seem
        !           401: to object to fights; he just regulates them ("For every ten yards you
        !           402: run, you can fire one shot").  He really ought to break them up, and
        !           403: penalize runners for even trying to fight.
        !           404: 
        !           405:      "Won't everyone stop programming without a monetary incentive?"
        !           406: 
        !           407:    Actually, many people will program with absolutely no monetary
        !           408: incentive. Programming has an irresistible fascination for some people,
        !           409: usually the people who are best at it.  There is no shortage of
        !           410: professional musicians who keep at it even though they have no hope of
        !           411: making a living that way.
        !           412: 
        !           413:    But really this question, though commonly asked, is not appropriate
        !           414: to the situation.  Pay for programmers will not disappear, only become
        !           415: less.  So the right question is, will anyone program with a reduced
        !           416: monetary incentive?  My experience shows that they will.
        !           417: 
        !           418:    For more than ten years, many of the world's best programmers worked
        !           419: at the Artificial Intelligence Lab for far less money than they could
        !           420: have had anywhere else.  They got many kinds of non-monetary rewards:
        !           421: fame and appreciation, for example.  And creativity is also fun, a
        !           422: reward in itself.
        !           423: 
        !           424:    Then most of them left when offered a chance to do the same
        !           425: interesting work for a lot of money.
        !           426: 
        !           427:    What the facts show is that people will program for reasons other
        !           428: than riches; but if given a chance to make a lot of money as well, they
        !           429: will come to expect and demand it.  Low-paying organizations do poorly
        !           430: in competition with high-paying ones, but they do not have to do badly
        !           431: if the high-paying ones are banned.
        !           432: 
        !           433:      "We need the programmers desperately.  If they demand that we stop
        !           434:      helping our neighbors, we have to obey."
        !           435: 
        !           436:    You're never so desperate that you have to obey this sort of demand.
        !           437: Remember: millions for defense, but not a cent for tribute!
        !           438: 
        !           439:      "Programmers need to make a living somehow."
        !           440: 
        !           441:    In the short run, this is true.  However, there are plenty of ways
        !           442: that programmers could make a living without selling the right to use a
        !           443: program. This way is customary now because it brings programmers and
        !           444: businessmen the most money, not because it is the only way to make a
        !           445: living.  It is easy to find other ways if you want to find them.  Here
        !           446: are a number of examples.
        !           447: 
        !           448:    A manufacturer introducing a new computer will pay for the porting of
        !           449: operating systems onto the new hardware.
        !           450: 
        !           451:    The sale of teaching, hand-holding and maintenance services could
        !           452: also employ programmers.
        !           453: 
        !           454:    People with new ideas could distribute programs as freeware, asking
        !           455: for donations from satisfied users, or selling hand-holding services. 
        !           456: I have met people who are already working this way successfully.
        !           457: 
        !           458:    Users with related needs can form users' groups, and pay dues.  A
        !           459: group would contract with programming companies to write programs that
        !           460: the group's members would like to use.
        !           461: 
        !           462:    All sorts of development can be funded with a Software Tax:
        !           463: 
        !           464:      Suppose everyone who buys a computer has to pay x percent of the
        !           465:      price as a software tax.  The government gives this to an agency
        !           466:      like the NSF to spend on software development.
        !           467: 
        !           468:      But if the computer buyer makes a donation to software development
        !           469:      himself, he can take a credit against the tax.  He can donate to
        !           470:      the project of his own choosing--often, chosen because he hopes to
        !           471:      use the results when it is done.  He can take a credit for any
        !           472:      amount of donation up to the total tax he had to pay.
        !           473: 
        !           474:      The total tax rate could be decided by a vote of the payers of the
        !           475:      tax, weighted according to the amount they will be taxed on.
        !           476: 
        !           477:      The consequences:
        !           478: 
        !           479:         * The computer-using community supports software development.
        !           480: 
        !           481:         * This community decides what level of support is needed.
        !           482: 
        !           483:         * Users who care which projects their share is spent on can
        !           484:           choose this for themselves.
        !           485: 
        !           486:    In the long run, making programs free is a step toward the
        !           487: post-scarcity world, where nobody will have to work very hard just to
        !           488: make a living. People will be free to devote themselves to activities
        !           489: that are fun, such as programming, after spending the necessary ten
        !           490: hours a week on required tasks such as legislation, family counseling,
        !           491: robot repair and asteroid prospecting.  There will be no need to be
        !           492: able to make a living from programming.
        !           493: 
        !           494:    We have already greatly reduced the amount of work that the whole
        !           495: society must do for its actual productivity, but only a little of this
        !           496: has translated itself into leisure for workers because much
        !           497: nonproductive activity is required to accompany productive activity. 
        !           498: The main causes of this are bureaucracy and isometric struggles against
        !           499: competition.  Free software will greatly reduce these drains in the
        !           500: area of software production.  We must do this, in order for technical
        !           501: gains in productivity to translate into less work for us.
        !           502: 
        !           503: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.