2 Copyright (c) 2002 Sean M. Burke.
4 This library is free software; you can redistribute it and/or modify it
5 under the same terms as Perl itself.
7 This program is distributed in the hope that it will be useful, but
8 without any warranty; without even the implied warranty of
9 merchantability or fitness for a particular purpose.
11 ===========================================================================
13 This program is free software; you can redistribute it and/or modify
14 it under the terms of either:
16 a. the GNU General Public License as published by the Free
17 Software Foundation; either version 1, or (at your option) any
20 b. the "Artistic License" which comes with this Kit.
22 This program is distributed in the hope that it will be useful,
23 but WITHOUT ANY WARRANTY; without even the implied warranty of
24 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See either
25 the GNU General Public License or the Artistic License for more details.
27 You should have received a copy of the Artistic License with this
28 Kit, in the file named "Artistic". If not, I'll be glad to provide one.
30 You should also have received a copy of the GNU General Public License
31 along with this program in the file named "Copying". If not, write to the
32 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
33 Boston, MA 02110-1301, USA or visit their web page on the internet at
34 https://www.gnu.org/copyleft/gpl.html.
36 For those of you that choose to use the GNU General Public License,
37 my interpretation of the GNU General Public License is that no Perl
38 script falls under the terms of the GPL unless you explicitly put
39 said script under the terms of the GPL yourself. Furthermore, any
40 object code linked with perl does not automatically fall under the
41 terms of the GPL, provided such object code only adds definitions
42 of subroutines and variables, and does not otherwise impair the
43 resulting interpreter from executing any standard Perl script. I
44 consider linking in C subroutines in this manner to be the moral
45 equivalent of defining subroutines in the Perl language itself. You
46 may sell such an object file as proprietary provided that you provide
47 or offer to provide the Perl source, as specified by the GNU General
48 Public License. (This is merely an alternate way of specifying input
49 to the program.) You may also sell a binary produced by the dumping of
50 a running Perl script that belongs to you, provided that you provide or
51 offer to provide the Perl source as specified by the GPL. (The
52 fact that a Perl interpreter and your code are in the same binary file
53 is, in this case, a form of mere aggregation.) This is my interpretation
54 of the GPL. If you still have concerns or difficulties understanding
55 my intent, feel free to contact me. Of course, the Artistic License
56 spells all this out for your protection, so you may prefer to use that.
59 --- Copying ---------------------------------------------------------------
61 GNU GENERAL PUBLIC LICENSE
62 Version 1, February 1989
64 Copyright (C) 1989 Free Software Foundation, Inc.
65 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
67 Everyone is permitted to copy and distribute verbatim copies
68 of this license document, but changing it is not allowed.
72 The license agreements of most software companies try to keep users
73 at the mercy of those companies. By contrast, our General Public
74 License is intended to guarantee your freedom to share and change free
75 software--to make sure the software is free for all its users. The
76 General Public License applies to the Free Software Foundation's
77 software and to any other program whose authors commit to using it.
78 You can use it for your programs, too.
80 When we speak of free software, we are referring to freedom, not
81 price. Specifically, the General Public License is designed to make
82 sure that you have the freedom to give away or sell copies of free
83 software, that you receive source code or can get it if you want it,
84 that you can change the software or use pieces of it in new free
85 programs; and that you know you can do these things.
87 To protect your rights, we need to make restrictions that forbid
88 anyone to deny you these rights or to ask you to surrender the rights.
89 These restrictions translate to certain responsibilities for you if you
90 distribute copies of the software, or if you modify it.
92 For example, if you distribute copies of a such a program, whether
93 gratis or for a fee, you must give the recipients all the rights that
94 you have. You must make sure that they, too, receive or can get the
95 source code. And you must tell them their rights.
97 We protect your rights with two steps: (1) copyright the software, and
98 (2) offer you this license which gives you legal permission to copy,
99 distribute and/or modify the software.
101 Also, for each author's protection and ours, we want to make certain
102 that everyone understands that there is no warranty for this free
103 software. If the software is modified by someone else and passed on, we
104 want its recipients to know that what they have is not the original, so
105 that any problems introduced by others will not reflect on the original
106 authors' reputations.
108 The precise terms and conditions for copying, distribution and
111 GNU GENERAL PUBLIC LICENSE
112 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
114 0. This License Agreement applies to any program or other work which
115 contains a notice placed by the copyright holder saying it may be
116 distributed under the terms of this General Public License. The
117 "Program", below, refers to any such program or work, and a "work based
118 on the Program" means either the Program or any work containing the
119 Program or a portion of it, either verbatim or with modifications. Each
120 licensee is addressed as "you".
122 1. You may copy and distribute verbatim copies of the Program's source
123 code as you receive it, in any medium, provided that you conspicuously and
124 appropriately publish on each copy an appropriate copyright notice and
125 disclaimer of warranty; keep intact all the notices that refer to this
126 General Public License and to the absence of any warranty; and give any
127 other recipients of the Program a copy of this General Public License
128 along with the Program. You may charge a fee for the physical act of
131 2. You may modify your copy or copies of the Program or any portion of
132 it, and copy and distribute such modifications under the terms of Paragraph
133 1 above, provided that you also do the following:
135 a) cause the modified files to carry prominent notices stating that
136 you changed the files and the date of any change; and
138 b) cause the whole of any work that you distribute or publish, that
139 in whole or in part contains the Program or any part thereof, either
140 with or without modifications, to be licensed at no charge to all
141 third parties under the terms of this General Public License (except
142 that you may choose to grant warranty protection to some or all
143 third parties, at your option).
145 c) If the modified program normally reads commands interactively when
146 run, you must cause it, when started running for such interactive use
147 in the simplest and most usual way, to print or display an
148 announcement including an appropriate copyright notice and a notice
149 that there is no warranty (or else, saying that you provide a
150 warranty) and that users may redistribute the program under these
151 conditions, and telling the user how to view a copy of this General
154 d) You may charge a fee for the physical act of transferring a
155 copy, and you may at your option offer warranty protection in
158 Mere aggregation of another independent work with the Program (or its
159 derivative) on a volume of a storage or distribution medium does not bring
160 the other work under the scope of these terms.
162 3. You may copy and distribute the Program (or a portion or derivative of
163 it, under Paragraph 2) in object code or executable form under the terms of
164 Paragraphs 1 and 2 above provided that you also do one of the following:
166 a) accompany it with the complete corresponding machine-readable
167 source code, which must be distributed under the terms of
168 Paragraphs 1 and 2 above; or,
170 b) accompany it with a written offer, valid for at least three
171 years, to give any third party free (except for a nominal charge
172 for the cost of distribution) a complete machine-readable copy of the
173 corresponding source code, to be distributed under the terms of
174 Paragraphs 1 and 2 above; or,
176 c) accompany it with the information you received as to where the
177 corresponding source code may be obtained. (This alternative is
178 allowed only for noncommercial distribution and only if you
179 received the program in object code or executable form alone.)
181 Source code for a work means the preferred form of the work for making
182 modifications to it. For an executable file, complete source code means
183 all the source code for all modules it contains; but, as a special
184 exception, it need not include source code for modules which are standard
185 libraries that accompany the operating system on which the executable
186 file runs, or for standard header files or definitions files that
187 accompany that operating system.
189 4. You may not copy, modify, sublicense, distribute or transfer the
190 Program except as expressly provided under this General Public License.
191 Any attempt otherwise to copy, modify, sublicense, distribute or transfer
192 the Program is void, and will automatically terminate your rights to use
193 the Program under this License. However, parties who have received
194 copies, or rights to use copies, from you under this General Public
195 License will not have their licenses terminated so long as such parties
196 remain in full compliance.
198 5. By copying, distributing or modifying the Program (or any work based
199 on the Program) you indicate your acceptance of this license to do so,
200 and all its terms and conditions.
202 6. Each time you redistribute the Program (or any work based on the
203 Program), the recipient automatically receives a license from the original
204 licensor to copy, distribute or modify the Program subject to these
205 terms and conditions. You may not impose any further restrictions on the
206 recipients' exercise of the rights granted herein.
208 7. The Free Software Foundation may publish revised and/or new versions
209 of the General Public License from time to time. Such new versions will
210 be similar in spirit to the present version, but may differ in detail to
211 address new problems or concerns.
213 Each version is given a distinguishing version number. If the Program
214 specifies a version number of the license which applies to it and "any
215 later version", you have the option of following the terms and conditions
216 either of that version or of any later version published by the Free
217 Software Foundation. If the Program does not specify a version number of
218 the license, you may choose any version ever published by the Free Software
221 8. If you wish to incorporate parts of the Program into other free
222 programs whose distribution conditions are different, write to the author
223 to ask for permission. For software which is copyrighted by the Free
224 Software Foundation, write to the Free Software Foundation; we sometimes
225 make exceptions for this. Our decision will be guided by the two goals
226 of preserving the free status of all derivatives of our free software and
227 of promoting the sharing and reuse of software generally.
231 9. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
232 FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
233 OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
234 PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
235 OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
236 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
237 TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
238 PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
239 REPAIR OR CORRECTION.
241 10. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
242 WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
243 REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
244 INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
245 OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
246 TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
247 YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
248 PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
249 POSSIBILITY OF SUCH DAMAGES.
251 END OF TERMS AND CONDITIONS
253 Appendix: How to Apply These Terms to Your New Programs
255 If you develop a new program, and you want it to be of the greatest
256 possible use to humanity, the best way to achieve this is to make it
257 free software which everyone can redistribute and change under these
260 To do so, attach the following notices to the program. It is safest to
261 attach them to the start of each source file to most effectively convey
262 the exclusion of warranty; and each file should have at least the
263 "copyright" line and a pointer to where the full notice is found.
265 <one line to give the program's name and a brief idea of what it does.>
266 Copyright (C) 19yy <name of author>
268 This program is free software; you can redistribute it and/or modify
269 it under the terms of the GNU General Public License as published by
270 the Free Software Foundation; either version 1, or (at your option)
273 This program is distributed in the hope that it will be useful,
274 but WITHOUT ANY WARRANTY; without even the implied warranty of
275 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
276 GNU General Public License for more details.
278 You should have received a copy of the GNU General Public License
279 along with this program; if not, write to the Free Software
280 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA
283 Also add information on how to contact you by electronic and paper mail.
285 If the program is interactive, make it output a short notice like this
286 when it starts in an interactive mode:
288 Gnomovision version 69, Copyright (C) 19xx name of author
289 Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
290 This is free software, and you are welcome to redistribute it
291 under certain conditions; type `show c' for details.
293 The hypothetical commands `show w' and `show c' should show the
294 appropriate parts of the General Public License. Of course, the
295 commands you use may be called something other than `show w' and `show
296 c'; they could even be mouse-clicks or menu items--whatever suits your
299 You should also get your employer (if you work as a programmer) or your
300 school, if any, to sign a "copyright disclaimer" for the program, if
301 necessary. Here a sample; alter the names:
303 Yoyodyne, Inc., hereby disclaims all copyright interest in the
304 program `Gnomovision' (a program to direct compilers to make passes
305 at assemblers) written by James Hacker.
307 <signature of Ty Coon>, 1 April 1989
308 Ty Coon, President of Vice
310 That's all there is to it!
313 --- Artistic --------------------------------------------------------------
315 The "Artistic License"
319 The intent of this document is to state the conditions under which a
320 Package may be copied, such that the Copyright Holder maintains some
321 semblance of artistic control over the development of the package,
322 while giving the users of the package the right to use and distribute
323 the Package in a more-or-less customary fashion, plus the right to make
324 reasonable modifications.
328 "Package" refers to the collection of files distributed by the
329 Copyright Holder, and derivatives of that collection of files
330 created through textual modification.
332 "Standard Version" refers to such a Package if it has not been
333 modified, or has been modified in accordance with the wishes
334 of the Copyright Holder as specified below.
336 "Copyright Holder" is whoever is named in the copyright or
337 copyrights for the package.
339 "You" is you, if you're thinking about copying or distributing
342 "Reasonable copying fee" is whatever you can justify on the
343 basis of media cost, duplication charges, time of people involved,
344 and so on. (You will not be required to justify it to the
345 Copyright Holder, but only to the computing community at large
346 as a market that must bear the fee.)
348 "Freely Available" means that no fee is charged for the item
349 itself, though there may be fees involved in handling the item.
350 It also means that recipients of the item may redistribute it
351 under the same conditions they received it.
353 1. You may make and give away verbatim copies of the source form of the
354 Standard Version of this Package without restriction, provided that you
355 duplicate all of the original copyright notices and associated disclaimers.
357 2. You may apply bug fixes, portability fixes and other modifications
358 derived from the Public Domain or from the Copyright Holder. A Package
359 modified in such a way shall still be considered the Standard Version.
361 3. You may otherwise modify your copy of this Package in any way, provided
362 that you insert a prominent notice in each changed file stating how and
363 when you changed that file, and provided that you do at least ONE of the
366 a) place your modifications in the Public Domain or otherwise make them
367 Freely Available, such as by posting said modifications to Usenet or
368 an equivalent medium, or placing the modifications on a major archive
369 site such as uunet.uu.net, or by allowing the Copyright Holder to include
370 your modifications in the Standard Version of the Package.
372 b) use the modified Package only within your corporation or organization.
374 c) rename any non-standard executables so the names do not conflict
375 with standard executables, which must also be provided, and provide
376 a separate manual page for each non-standard executable that clearly
377 documents how it differs from the Standard Version.
379 d) make other distribution arrangements with the Copyright Holder.
381 4. You may distribute the programs of this Package in object code or
382 executable form, provided that you do at least ONE of the following:
384 a) distribute a Standard Version of the executables and library files,
385 together with instructions (in the manual page or equivalent) on where
386 to get the Standard Version.
388 b) accompany the distribution with the machine-readable source of
389 the Package with your modifications.
391 c) give non-standard executables non-standard names, and clearly
392 document the differences in manual pages (or equivalent), together
393 with instructions on where to get the Standard Version.
395 d) make other distribution arrangements with the Copyright Holder.
397 5. You may charge a reasonable copying fee for any distribution of this
398 Package. You may charge any fee you choose for support of this
399 Package. You may not charge a fee for this Package itself. However,
400 you may distribute this Package in aggregate with other (possibly
401 commercial) programs as part of a larger (possibly commercial) software
402 distribution provided that you do not advertise this Package as a
403 product of your own. You may embed this Package's interpreter within
404 an executable of yours (by linking); this shall be construed as a mere
405 form of aggregation, provided that the complete Standard Version of the
406 interpreter is so embedded.
408 6. The scripts and library files supplied as input to or produced as
409 output from the programs of this Package do not automatically fall
410 under the copyright of this Package, but belong to whoever generated
411 them, and may be sold commercially, and may be aggregated with this
412 Package. If such scripts or library files are aggregated with this
413 Package via the so-called "undump" or "unexec" methods of producing a
414 binary executable image, then distribution of such an image shall
415 neither be construed as a distribution of this Package nor shall it
416 fall under the restrictions of Paragraphs 3 and 4, provided that you do
417 not represent such an executable image as a Standard Version of this
420 7. C subroutines (or comparably compiled subroutines in other
421 languages) supplied by you and linked into this Package in order to
422 emulate subroutines and variables of the language defined by this
423 Package shall not be considered part of this Package, but are the
424 equivalent of input as in Paragraph 6, provided these subroutines do
425 not change the language in any way that would cause it to fail the
426 regression tests for the language.
428 8. Aggregation of this Package with a commercial distribution is always
429 permitted provided that the use of this Package is embedded; that is,
430 when no overt attempt is made to make this Package's interfaces visible
431 to the end user of the commercial distribution. Such use shall not be
432 construed as a distribution of this Package.
434 9. The name of the Copyright Holder may not be used to endorse or promote
435 products derived from this software without specific prior written permission.
437 10. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
438 IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
439 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.