This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
change #22071 (taint bug in $^0) introduced a potential double
[perl5.git] / README
diff --git a/README b/README
index ae23b4b..1becd35 100644 (file)
--- a/README
+++ b/README
@@ -1,77 +1,98 @@
-Copyright 1998, O'Reilly & Associates, Inc.
-
-This package may be copied under the same terms as Perl itself.
-
-Disclaimers
------------
-This is a work in progress, and relies on bleeding-edge technology
-from the network.  Don't expect not to be surprised occasionally.
-
-Requirements
-------------
-Perl 5.004 (or later) must be compiled and installed as a shared library
-(libperl.so).  I had to use the system's malloc.  We've tested
-it most heavily with 5.004_04.
-
-You need JDK 1.1.  On Solaris 1.1.1 works.  On Linux you need 1.1.3 with
-the patches from
-
-  ftp://ftp.blackdown.org/pub/Linux/JDK/1.1.3/updates/libjava-1.1.3v2-1.tar.gz
-
-The get_jdk directory contains a script that will download JDK (but not
-the patch file above) off of the net for you.  (This presumes you've
-already installed the modules mentioned in ../README.)
-
-What the heck is JPL?
----------------------
-JPL is a hybrid (to use the polite term) language.  It's basically Java
-in which the methods can optionally be implemented by Perl code.  A
-preprocessor called "JPL::Compile" looks at your .jpl file and spits
-out the appropriate .java, .c, .h, .pl, and .so files to accomplish the
-desired task.  Hopefully a lot of those files can go away in the future
-as jpl mutates into a Perl-to-Java compiler.  The long-term goal is for
-jpl to be able to take a pure Perl file and spit out a java .class
-file.  This initial version of JPL is an attempt to begin to mesh the
-semantics of Java and Perl.  Some people may find it useful in its
-current form, but you should know right up front that we've still got a
-ways to go with it.  A journey of a thousand miles continues with the
-second step...
-
-JPL Syntax
-----------
-JPL syntax is trivial, given that you know Java and Perl.  Pretend like
-you're writing a native Java method, but say "perl" instead of
-"native", and then instead of omitting the body of the method, put your
-Perl code in double curlies.  (See Sample.jpl for an example.)
-
-Calling back from Perl to Java is done through the JNI (Java Native
-Interface).  No weird transmogrifications are done by the preprocessor
-to your Perl code--it's all normal Perl.  The preprocessor just wraps
-it up into funny subroutines you don't see unless you peek at the .pl
-file it generates.
+
+                           Perl Kit, Version 5
+
+                Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998
+                   1999, 2000, 2001, by Larry Wall and others
+
+                           All rights reserved.
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of either:
+
+       a) the GNU General Public License as published by the Free
+       Software Foundation; either version 1, or (at your option) any
+       later version, or
+
+       b) the "Artistic License" which comes with this Kit.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See either
+    the GNU General Public License or the Artistic License for more details.
+
+    You should have received a copy of the Artistic License with this
+    Kit, in the file named "Artistic".  If not, I'll be glad to provide one.
+
+    You should also have received a copy of the GNU General Public License
+    along with this program in the file named "Copying". If not, write to the 
+    Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 
+    02111-1307, USA or visit their web page on the internet at
+    http://www.gnu.org/copyleft/gpl.html.
+
+    For those of you that choose to use the GNU General Public License,
+    my interpretation of the GNU General Public License is that no Perl
+    script falls under the terms of the GPL unless you explicitly put
+    said script under the terms of the GPL yourself.  Furthermore, any
+    object code linked with perl does not automatically fall under the
+    terms of the GPL, provided such object code only adds definitions
+    of subroutines and variables, and does not otherwise impair the
+    resulting interpreter from executing any standard Perl script.  I
+    consider linking in C subroutines in this manner to be the moral
+    equivalent of defining subroutines in the Perl language itself.  You
+    may sell such an object file as proprietary provided that you provide
+    or offer to provide the Perl source, as specified by the GNU General
+    Public License.  (This is merely an alternate way of specifying input
+    to the program.)  You may also sell a binary produced by the dumping of
+    a running Perl script that belongs to you, provided that you provide or
+    offer to provide the Perl source as specified by the GPL.  (The
+    fact that a Perl interpreter and your code are in the same binary file
+    is, in this case, a form of mere aggregation.)  This is my interpretation
+    of the GPL.  If you still have concerns or difficulties understanding
+    my intent, feel free to contact me.  Of course, the Artistic License
+    spells all this out for your protection, so you may prefer to use that.
+
+--------------------------------------------------------------------------
+
+Perl is a language that combines some of the features of C, sed, awk
+and shell.  See the manual page for more hype.  There are also many Perl
+books available, covering a wide variety of topics, from various publishers.
+See pod/perlbook.pod for more information.
+
+Please read all the directions below before you proceed any further, and
+then follow them carefully.
+
+After you have unpacked your kit, you should have all the files listed
+in MANIFEST.
 
 Installation
-------------
-Run "install-jpl".  You have to tell it whether you want to use the
-current directory for JPL_HOME or some other directory.  Everything
-else should take care of itself, except that after install-jpl
-write the setvars program, you are responsible to invoke it properly
-before any JPL applications can be compiled under the current shell.
 
-    sh:   eval `setvars -sh`
-    csh:  eval `setvars -csh`
-    perl: eval `setvars -perl`;
+1) Detailed instructions are in the file "INSTALL", which you should
+read if you are either installing on a system resembling Unix
+or porting perl to another platform.  For non-Unix platforms, see the
+corresponding README.
+
+2) Read the manual entries before running perl.
+
+3) IMPORTANT!  Help save the world!  Communicate any problems and suggested
+patches to perlbug@perl.org so we can keep the world in sync.
+If you have a problem, there's someone else out there who either has had
+or will have the same problem.  It's usually helpful if you send the
+output of the "myconfig" script in the main perl directory.
 
-More Info
----------
+If you've succeeded in compiling perl, the perlbug script in the "utils"
+subdirectory can be used to help mail in a bug report.
 
-You can look at the Sample and Test directories, as well as the ../eg
-directory for examples.
+If possible, send in patches such that the patch program will apply them.
+Context diffs are the best, then normal diffs.  Don't send ed scripts--
+I've probably changed my copy since the version you have.
 
-Perhaps the most important bit of advice we can give you is to watch
+The latest versions of perl are always available on the various CPAN
+(Comprehensive Perl Archive Network) sites around the world.
+See <URL:http://www.cpan.org/src/>.
 
-    http://perl.oreilly.com
 
-for further information on how to get further information.
+Just a personal note:  I want you to know that I create nice things like this
+because it pleases the Author of my story.  If this bothers you, then your
+notion of Authorship needs some revision.  But you can use perl anyway. :-)
 
-Have the appropriate amount of fun.
+                                                       The author.