byte-interview.html (29373B)
1 <!--#include virtual="/server/header.html" --> 2 <!-- Parent-Version: 1.96 --> 3 <!-- This page is derived from /server/standards/boilerplate.html --> 4 <!--#set var="TAGS" value="gnu-history" --> 5 <!--#set var="DISABLE_TOP_ADDENDUM" value="yes" --> 6 <title>BYTE Interview with Richard Stallman 7 - GNU Project - Free Software Foundation</title> 8 <!--#include virtual="/gnu/po/byte-interview.translist" --> 9 <!--#include virtual="/server/banner.html" --> 10 <!--#include virtual="/gnu/gnu-breadcrumb.html" --> 11 <!--GNUN: OUT-OF-DATE NOTICE--> 12 <!--#include virtual="/server/top-addendum.html" --> 13 <div class="article reduced-width"> 14 <h2>BYTE Interview with Richard Stallman</h2> 15 16 <address class="byline">conducted by David Betz and Jon Edwards</address> 17 18 <div class="introduction"> 19 <p>Richard Stallman discusses his public-domain Unix-compatible 20 software system with BYTE editors (July 1986).</p> 21 </div> 22 <hr class="no-display" /> 23 24 <p>Richard Stallman has undertaken probably the most ambitious free 25 software development project to date, the GNU system. In his GNU 26 Manifesto, published in the March 1985 issue of Dr. Dobb's Journal, 27 Stallman described GNU as a “complete Unix-compatible software 28 system which I am writing so that I can give it away free to everyone 29 who can use it… Once GNU is written, everyone will be able to 30 obtain good system software free, just like air.” (GNU is an 31 acronym for GNU's Not Unix; the <i>g</i> is pronounced.)</p> 32 33 <p>Stallman is widely known as the author of EMACS, a powerful text 34 editor that he developed at the <abbr title="Massachusetts Institute 35 of Technology">MIT</abbr> Artificial Intelligence Laboratory. It is 36 no coincidence that the first piece of software produced as part of 37 the GNU project was a new implementation of EMACS. GNU EMACS has 38 already achieved a reputation as one of the best implementations of 39 EMACS currently available at any price.</p> 40 41 <p><strong>BYTE</strong>: We read your GNU Manifesto in the March 1985 42 issue of Dr. Dobb's. What has happened since? Was that really the 43 beginning, and how have you progressed since then?</p> 44 45 <p><strong>Stallman</strong>: The publication in Dr. Dobb's wasn't the beginning of the 46 project. I wrote the GNU Manifesto when I was getting ready to start the 47 project, as a proposal to ask computer manufacturers for funding. They 48 didn't want to get involved, and I decided that rather than spend my time 49 trying to pursue funds, I ought to spend it writing code. The manifesto was 50 published about a year and a half after I had written it, when I had barely 51 begun distributing the GNU EMACS. Since that time, in addition to making 52 GNU EMACS more complete and making it run on many more computers, I have 53 nearly finished the optimizing C compiler and all the other software that 54 is needed for running C programs. This includes a source-level debugger 55 that has many features that the other source-level debuggers on Unix don't 56 have. For example, it has convenience variables within the debugger so you 57 can save values, and it also has a history of all the values that you have 58 printed out, making it tremendously easier to chase around list structures.</p> 59 60 <p><strong>BYTE</strong>: You have finished an editor that is now widely distributed and you 61 are about to finish the compiler.</p> 62 63 <p><strong>Stallman</strong>: I expect that it will be finished this October.</p> 64 65 <p><strong>BYTE</strong>: What about the kernel?</p> 66 67 <p><strong>Stallman</strong>: I'm currently planning to start with the kernel that was written 68 at MIT and was released to the public recently with the idea that I would 69 use it. This kernel is called TRIX; it's based on remote procedure call. I 70 still need to add compatibility for a lot of the features of Unix which it 71 doesn't have currently. I haven't started to work on that yet. I'm 72 finishing the compiler before I go to work on the kernel. I am also going 73 to have to rewrite the file system. I intend to make it failsafe just by 74 having it write blocks in the proper order so that the disk structure is 75 always consistent. Then I want to add version numbers. I have a complicated 76 scheme to reconcile version numbers with the way people usually use Unix. 77 You have to be able to specify filenames without version numbers, but you 78 also have to be able to specify them with explicit version numbers, and 79 these both need to work with ordinary Unix programs that have not been 80 modified in any way to deal with the existence of this feature. I think I 81 have a scheme for doing this, and only trying it will show me whether it 82 really does the job.</p> 83 84 <p><strong>BYTE</strong>: Do you have a brief description you can give us as to how GNU as a 85 system will be superior to other systems? We know that one of your goals is 86 to produce something that is compatible with Unix. But at least in the area 87 of file systems you have already said that you are going to go beyond Unix 88 and produce something that is better.</p> 89 90 <p><strong>Stallman</strong>: The C compiler will produce better code and run faster. The 91 debugger is better. With each piece I may or may not find a way to improve 92 it. But there is no one answer to this question. To some extent I am 93 getting the benefit of reimplementation, which makes many systems much 94 better. To some extent it's because I have been in the field a long time 95 and worked on many other systems. I therefore have many ideas to bring to 96 bear. One way in which it will be better is that practically everything in 97 the system will work on files of any size, on lines of any size, with any 98 characters appearing in them. The Unix system is very bad in that regard. 99 It's not anything new as a principle of software engineering that you 100 shouldn't have arbitrary limits. But it just was the standard practice in 101 writing Unix to put those in all the time, possibly just because they were 102 writing it for a very small computer. The only limit in the GNU system is 103 when your program runs out of memory because it tried to work on too much 104 data and there is no place to keep it all.</p> 105 106 <p><strong>BYTE</strong>: And that isn't likely to be hit if you've got virtual memory. You may 107 just take forever to come up with the solution.</p> 108 109 <p><strong>Stallman</strong>: Actually these limits tend to hit in a time long before you take 110 forever to come up with the solution.</p> 111 112 <p><strong>BYTE</strong>: Can you say something about what types of machines and environments 113 GNU EMACS in particular has been made to run under? It's now running on 114 VAXes; has it migrated in any form to personal computers?</p> 115 116 <p><strong>Stallman</strong>: I'm not sure what you mean by personal computers. For example, is 117 a Sun a personal computer? GNU EMACS requires at least a megabyte of 118 available memory and preferably more. It is normally used on machines that 119 have virtual memory. Except for various technical problems in a few C 120 compilers, almost any machine with virtual memory and running a fairly 121 recent version of Unix will run GNU EMACS, and most of them currently do.</p> 122 123 <p><strong>BYTE</strong>: Has anyone tried to port it to Ataris or Macintoshes?</p> 124 125 <p><strong>Stallman</strong>: The Atari 1040ST still doesn't have quite enough memory. The next 126 Atari machine, I expect, will run it. I also think that future Ataris will 127 have some forms of memory mapping. Of course, I am not designing the 128 software to run on the kinds of computers that are prevalent today. I knew 129 when I started this project it was going to take a few years. I therefore 130 decided that I didn't want to make a worse system by taking on the 131 additional challenge of making it run in the currently constrained 132 environment. So instead I decided I'm going to write it in the way that 133 seems the most natural and best. I am confident that in a couple of years 134 machines of sufficient size will be prevalent. In fact, increases in memory 135 size are happening so fast it surprises me how slow most of the people are 136 to put in virtual memory; I think it is totally essential.</p> 137 138 <p><strong>BYTE</strong>: I think people don't really view it as being necessary for 139 single-user machines.</p> 140 141 <p><strong>Stallman</strong>: They don't understand that single user doesn't mean single 142 program. Certainly for any Unix-like system it's important to be able to 143 run lots of different processes at the same time even if there is only one 144 of you. You could run GNU EMACS on a nonvirtual-memory machine with enough 145 memory, but you couldn't run the rest of the GNU system very well or a Unix 146 system very well.</p> 147 148 <p><strong>BYTE</strong>: How much of LISP is present in GNU EMACS? It occurred to me that it 149 may be useful to use that as a tool for learning LISP.</p> 150 151 <p><strong>Stallman</strong>: You can certainly do that. GNU EMACS contains a complete, 152 although not very powerful, LISP system. It's powerful enough for writing 153 editor commands. It's not comparable with, say, a Common LISP System, 154 something you could really use for system programming, but it has all the 155 things that LISP needs to have.</p> 156 157 <p><strong>BYTE</strong>: Do you have any predictions about when you would be likely to 158 distribute a workable environment in which, if we put it on our machines or 159 workstations, we could actually get reasonable work done without using 160 anything other than code that you distribute?</p> 161 162 <p><strong>Stallman</strong>: It's really hard to say. That could happen in a year, but of 163 course it could take longer. It could also conceivably take less, but 164 that's not too likely anymore. I think I'll have the compiler finished in a 165 month or two. The only other large piece of work I really have to do is in 166 the kernel. I first predicted GNU would take something like two years, but 167 it has now been two and a half years and I'm still not finished. Part of 168 the reason for the delay is that I spent a lot of time working on one 169 compiler that turned out to be a dead end. I had to rewrite it completely. 170 Another reason is that I spent so much time on GNU EMACS. I originally 171 thought I wouldn't have to do that at all.</p> 172 173 <p><strong>BYTE</strong>: Tell us about your distribution scheme.</p> 174 175 <p><strong>Stallman</strong>: I don't put software or manuals in the public domain, and the 176 reason is that I want to make sure that all the users get the freedom to 177 share. I don't want anyone making an improved version of a program I wrote 178 and distributing it as proprietary. I don't want that to ever be able to 179 happen. I want to encourage the free improvements to these programs, and 180 the best way to do that is to take away any temptation for a person to make 181 improvements nonfree. Yes, a few of them will refrain from making 182 improvements, but a lot of others will make the same improvements and 183 they'll make them free.</p> 184 185 <p><strong>BYTE</strong>: And how do you go about guaranteeing that?</p> 186 187 <p><strong>Stallman</strong>: I do this by copyrighting the programs and putting on a notice 188 giving people explicit permission to copy the programs and change them but 189 only on the condition that they distribute under the same terms that I 190 used, if at all. You don't have to distribute the changes you make to any 191 of my programs—you can just do it for yourself, and you don't have to give 192 it to anyone or tell anyone. But if you do give it to someone else, you 193 have to do it under the same terms that I use.</p> 194 195 <p><strong>BYTE</strong>: Do you obtain any rights over the executable code derived from the C 196 compiler?</p> 197 198 <p><strong>Stallman</strong>: The copyright law doesn't give me copyright on output from the 199 compiler, so it doesn't give me a way to say anything about that, and in 200 fact I don't try to. I don't sympathize with people developing proprietary 201 products with any compiler, but it doesn't seem especially useful to try to 202 stop them from developing them with this compiler, so I am not going to.</p> 203 204 <p><strong>BYTE</strong>: Do your restrictions apply if people take pieces of your code to 205 produce other things as well?</p> 206 207 <p><strong>Stallman</strong>: Yes, if they incorporate with changes any sizable piece. If it 208 were two lines of code, that's nothing; copyright doesn't apply to that. 209 Essentially, I have chosen these conditions so that first there is a 210 copyright, which is what all the software hoarders use to stop everybody 211 from doing anything, and then I add a notice giving up part of those 212 rights. So the conditions talk only about the things that copyright applies 213 to. I don't believe that the reason you should obey these conditions is 214 because of the law. The reason you should obey is because an upright person 215 when he distributes software encourages other people to share it further.</p> 216 217 <p><strong>BYTE</strong>: In a sense you are enticing people into this mode of thinking by 218 providing all of these interesting tools that they can use but only if they 219 buy into your philosophy.</p> 220 221 <p><strong>Stallman</strong>: Yes. You could also see it as using the legal system that 222 software hoarders have set up against them. I'm using it to protect the 223 public from them.</p> 224 225 <p><strong>BYTE</strong>: Given that manufacturers haven't wanted to fund the project, who do 226 you think will use the GNU system when it is done?</p> 227 228 <p><strong>Stallman</strong>: I have no idea, but it is not an important question. My purpose 229 is to make it possible for people to reject the chains that come with 230 proprietary software. I know that there are people who want to do that. 231 Now, there may be others who don't care, but they are not my concern. I 232 feel a bit sad for them and for the people that they influence. Right now a 233 person who perceives the unpleasantness of the terms of proprietary 234 software feels that he is stuck and has no alternative except not to use a 235 computer. Well, I am going to give him a comfortable alternative.</p> 236 237 <p>Other people may use the GNU system simply because it is technically 238 superior. For example, my C compiler is producing about as good a code as I 239 have seen from any C compiler. And GNU EMACS is generally regarded as being 240 far superior to the commercial competition. And GNU EMACS was not funded by 241 anyone either, but everyone is using it. I therefore think that many people 242 will use the rest of the GNU system because of its technical advantages. 243 But I would be doing a GNU system even if I didn't know how to make it 244 technically better because I want it to be socially better. The GNU project 245 is really a social project. It uses technical means to make a change in 246 society.</p> 247 248 <p><strong>BYTE</strong>: Then it is fairly important to you that people adopt GNU. It is not 249 just an academic exercise to produce this software to give it away to 250 people. You hope it will change the way the software industry operates.</p> 251 252 <p><strong>Stallman</strong>: Yes. Some people say no one will ever use it because it doesn't 253 have some attractive corporate logo on it, and other people say that they 254 think it is tremendously important and everyone's going to want to use it. 255 I have no way of knowing what is really going to happen. I don't know any 256 other way to try to change the ugliness of the field that I find myself in, 257 so this is what I have to do.</p> 258 259 <p><strong>BYTE</strong>: Can you address the implications? You obviously feel that this is an 260 important political and social statement.</p> 261 262 <p><strong>Stallman</strong>: It is a change. I'm trying to change the way people approach 263 knowledge and information in general. I think that to try to own knowledge, 264 to try to control whether people are allowed to use it, or to try to stop 265 other people from sharing it, is sabotage. It is an activity that benefits 266 the person that does it at the cost of impoverishing all of society. One 267 person gains one dollar by destroying two dollars' worth of wealth. I think 268 a person with a conscience wouldn't do that sort of thing except perhaps if 269 he would otherwise die. And of course the people who do this are fairly 270 rich; I can only conclude that they are unscrupulous. I would like to see 271 people get rewards for writing free software and for encouraging other 272 people to use it. I don't want to see people get rewards for writing 273 proprietary software because that is not really a contribution to society. 274 The principle of capitalism is the idea that people manage to make money by 275 producing things and thereby are encouraged to do what is useful, 276 automatically, so to speak. But that doesn't work when it comes to owning 277 knowledge. They are encouraged to do not really what's useful, and what 278 really is useful is not encouraged. I think it is important to say that 279 information is different from material objects like cars and loaves of 280 bread because people can copy it and share it on their own and, if nobody 281 attempts to stop them, they can change it and make it better for 282 themselves. That is a useful thing for people to do. This isn't true of 283 loaves of bread. If you have one loaf of bread and you want another, you 284 can't just put your loaf of bread into a bread copier. You can't make 285 another one except by going through all the steps that were used to make 286 the first one. It therefore is irrelevant whether people are permitted to 287 copy it—it's impossible.</p> 288 289 <p>Books were printed only on printing presses until recently. It was 290 possible to make a copy yourself by hand, but it wasn't practical because 291 it took so much more work than using a printing press. And it produced 292 something so much less attractive that, for all intents and purposes, you 293 could act as if it were impossible to make books except by mass producing 294 them. And therefore copyright didn't really take any freedom away from the 295 reading public. There wasn't anything that a book purchaser could do that 296 was forbidden by copyright.</p> 297 298 <p>But this isn't true for computer programs. It's also not true for 299 tape cassettes. It's partly false now for books, but it is still true 300 that for most books it is more expensive and certainly a lot more work 301 to Xerox them than to buy a copy, and the result is still less 302 attractive. Right now we are in a period where the situation that 303 made copyright harmless and acceptable is changing to a situation 304 where copyright will become destructive and intolerable. So the 305 people who are slandered as “pirates” are in fact the 306 people who are trying to do something useful that they have been 307 forbidden to do. The copyright laws are entirely designed to help 308 people take complete control over the use of some information for 309 their own good. But they aren't designed to help people who want to 310 make sure that the information is accessible to the public and stop 311 others from depriving the public. I think that the law should 312 recognize a class of works that are owned by the public, which is 313 different from public domain in the same sense that a public park is 314 different from something found in a garbage can. It's not there for 315 anybody to take away, it's there for everyone to use but for no one to 316 impede. Anybody in the public who finds himself being deprived of the 317 derivative work of something owned by the public should be able to sue 318 about it.</p> 319 320 <p><strong>BYTE</strong>: But aren't pirates interested in getting copies of programs because 321 they want to use those programs, not because they want to use that 322 knowledge to produce something better?</p> 323 324 <p><strong>Stallman</strong>: I don't see that that's the important distinction. More people 325 using a program means that the program contributes more to society. You 326 have a loaf of bread that could be eaten either once or a million times.</p> 327 328 <p><strong>BYTE</strong>: Some users buy commercial software to obtain support. How does your 329 distribution scheme provide support?</p> 330 331 <p><strong>Stallman</strong>: I suspect that those users are misled and are not thinking 332 clearly. It is certainly useful to have support, but when they start 333 thinking about how that has something to do with selling software or with 334 the software being proprietary, at that point they are confusing 335 themselves. There is no guarantee that proprietary software will receive 336 good support. Simply because sellers say that they provide support, that 337 doesn't mean it will be any good. And they may go out of business. In fact, 338 people think that GNU EMACS has better support than commercial EMACSes. One 339 of the reasons is that I'm probably a better hacker than the people who 340 wrote the other EMACSes, but the other reason is that everyone has sources 341 and there are so many people interested in figuring out how to do things 342 with it that you don't have to get your support from me. Even just the free 343 support that consists of my fixing bugs people report to me and 344 incorporating that in the next release has given people a good level of 345 support. You can always hire somebody to solve a problem for you, and when 346 the software is free you have a competitive market for the support. You can 347 hire anybody. I distribute a service list with EMACS, a list of people's 348 names and phone numbers and what they charge to provide support.</p> 349 350 <p><strong>BYTE</strong>: Do you collect their bug fixes?</p> 351 352 <p><strong>Stallman</strong>: Well, they send them to me. I asked all the people who wanted to 353 be listed to promise that they would never ask any of their customers to 354 keep secret whatever they were told or any changes they were given to the 355 GNU software as part of that support.</p> 356 357 <p><strong>BYTE</strong>: So you can't have people competing to provide support based on their 358 knowing the solution to some problem that somebody else doesn't know.</p> 359 360 <p><strong>Stallman</strong>: No. They can compete based on their being clever and more likely 361 to find the solution to your problem, or their already understanding more 362 of the common problems, or knowing better how to explain to you what you 363 should do. These are all ways they can compete. They can try to do better, 364 but they cannot actively impede their competitors.</p> 365 366 <p><strong>BYTE</strong>: I suppose it's like buying a car. You're not forced to go back to the 367 original manufacturer for support or continued maintenance.</p> 368 369 <p><strong>Stallman</strong>: Or buying a house—what would it be like if the only person who 370 could ever fix problems with your house was the contractor who built it 371 originally? That is the kind of imposition that's involved in proprietary 372 software. People tell me about a problem that happens in Unix. Because 373 manufacturers sell improved versions of Unix, they tend to collect fixes 374 and not give them out except in binaries. The result is that the bugs don't 375 really get fixed.</p> 376 377 <p><strong>BYTE</strong>: They're all duplicating effort trying to solve bugs independently.</p> 378 379 <p><strong>Stallman</strong>: Yes. Here is another point that helps put the problem of 380 proprietary information in a social perspective. Think about the liability 381 insurance crisis. In order to get any compensation from society, an injured 382 person has to hire a lawyer and split the money with that lawyer. This is a 383 stupid and inefficient way of helping out people who are victims of 384 accidents. And consider all the time that people put into hustling to take 385 business away from their competition. Think of the pens that are packaged 386 in large cardboard packages that cost more than the pen—just to make sure 387 that the pen isn't stolen. Wouldn't it be better if we just put free pens 388 on every street corner? And think of all the toll booths that impede the 389 flow of traffic. It's a gigantic social phenomenon. People find ways of 390 getting money by impeding society. Once they can impede society, they can 391 be paid to leave people alone. The waste inherent in owning information 392 will become more and more important and will ultimately make the difference 393 between the utopia in which nobody really has to work for a living because 394 it's all done by robots and a world just like ours where everyone spends 395 much time replicating what the next fellow is doing.</p> 396 397 <p><strong>BYTE</strong>: Like typing in copyright notices on the software.</p> 398 399 <p><strong>Stallman</strong>: More like policing everyone to make sure that they don't have 400 forbidden copies of anything and duplicating all the work people have 401 already done because it is proprietary.</p> 402 403 <p><strong>BYTE</strong>: A cynic might wonder how you earn your living.</p> 404 405 <p><strong>Stallman</strong>: From consulting. When I do consulting, I always reserve the right 406 to give away what I wrote for the consulting job. Also, I could be making 407 my living by mailing copies of the free software that I wrote and some that 408 other people wrote. Lots of people send in $150 for GNU EMACS, but now this 409 money goes to the Free Software Foundation that I started. The foundation 410 doesn't pay me a salary because it would be a conflict of interest. 411 Instead, it hires other people to work on GNU. As long as I can go on 412 making a living by consulting I think that's the best way.</p> 413 414 <p><strong>BYTE</strong>: What is currently included in the official GNU distribution tape?</p> 415 416 <p><strong>Stallman</strong>: Right now the tape contains GNU EMACS 417 (one version fits all computers); Bison, a program that 418 replaces <abbr title="Yet Another Compiler 419 Compiler">YACC</abbr>; MIT Scheme, which is Professor 420 Sussman's super-simplified dialect of LISP; and Hack, a 421 dungeon-exploring game similar to Rogue.</p> 422 423 <p><strong>BYTE</strong>: Does the printed manual come with the tape as well?</p> 424 425 <p><strong>Stallman</strong>: No. Printed manuals cost $15 each or copy them yourself. Copy 426 this interview and share it, too.</p> 427 428 <p><strong>BYTE</strong>: How can you get a copy of that?</p> 429 430 <p><strong>Stallman</strong>: Write to the Free Software Foundation, 675 Massachusetts Ave., 431 Cambridge, MA 02139.</p> 432 433 <address>[The current address (since 2005) is:<br /> 434 Free Software Foundation, 435 51 Franklin St, Fifth Floor, 436 Boston, MA 02110-1301, USA.<br /> 437 Voice: +1-617-542-5942<br /> 438 Fax: +1-617-542-2652] 439 </address> 440 441 <p><strong>BYTE</strong>: What are you going to do when you are done with the GNU system?</p> 442 443 <p><strong>Stallman</strong>: I'm not sure. Sometimes I think that what I'll go on to do is the 444 same thing in other areas of software.</p> 445 446 <p><strong>BYTE</strong>: So this is just the first of a whole series of assaults on the 447 software industry?</p> 448 449 <p><strong>Stallman</strong>: I hope so. But perhaps what I'll do is just live a life of ease 450 working a little bit of the time just to live. I don't have to live 451 expensively. The rest of the time I can find interesting people to hang 452 around with or learn to do things that I don't know how to do.</p> 453 </div> 454 455 </div><!-- for id="content", starts in the include above --> 456 <!--#include virtual="/server/footer.html" --> 457 <div id="footer" role="contentinfo"> 458 <div class="unprintable"> 459 460 <p>Please send general FSF & GNU inquiries to 461 <a href="mailto:gnu@gnu.org"><gnu@gnu.org></a>. 462 There are also <a href="/contact/">other ways to contact</a> 463 the FSF. Broken links and other corrections or suggestions can be sent 464 to <a href="mailto:webmasters@gnu.org"><webmasters@gnu.org></a>.</p> 465 466 <p><!-- TRANSLATORS: Ignore the original text in this paragraph, 467 replace it with the translation of these two: 468 469 We work hard and do our best to provide accurate, good quality 470 translations. However, we are not exempt from imperfection. 471 Please send your comments and general suggestions in this regard 472 to <a href="mailto:web-translators@gnu.org"> 473 <web-translators@gnu.org></a>.</p> 474 475 <p>For information on coordinating and contributing translations of 476 our web pages, see <a 477 href="/server/standards/README.translations.html">Translations 478 README</a>. --> 479 Please see the <a 480 href="/server/standards/README.translations.html">Translations 481 README</a> for information on coordinating and contributing translations 482 of this article.</p> 483 </div> 484 485 <!-- Regarding copyright, in general, standalone pages (as opposed to 486 files generated as part of manuals) on the GNU web server should 487 be under CC BY-ND 4.0. Please do NOT change or remove this 488 without talking with the webmasters or licensing team first. 489 Please make sure the copyright date is consistent with the 490 document. For web pages, it is ok to list just the latest year the 491 document was modified, or published. 492 493 If you wish to list earlier years, that is ok too. 494 Either "2001, 2002, 2003" or "2001-2003" are ok for specifying 495 years, as long as each year in the range is in fact a copyrightable 496 year, i.e., a year in which the document was published (including 497 being publicly visible on the web or in a revision control system). 498 499 There is more detail about copyright years in the GNU Maintainers 500 Information document, www.gnu.org/prep/maintain. --> 501 502 <p>Copyright © 1999, 2021 Free Software Foundation, Inc.</p> 503 504 <p>This page is licensed under a <a rel="license" 505 href="http://creativecommons.org/licenses/by-nd/4.0/">Creative 506 Commons Attribution-NoDerivatives 4.0 International License</a>.</p> 507 508 <!--#include virtual="/server/bottom-notes.html" --> 509 510 <p class="unprintable">Updated: 511 <!-- timestamp start --> 512 $Date: 2021/11/02 11:26:31 $ 513 <!-- timestamp end --> 514 </p> 515 </div> 516 </div><!-- for class="inner", starts in the banner include --> 517 </body> 518 </html>