This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
GCC_DIAG_IGNORE/RESTORE whine in non-gcc if at file level.
[perl5.git] / README
diff --git a/README b/README
index ae23b4b..804d41d 100644 (file)
--- a/README
+++ b/README
-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.
-
-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`;
-
-More Info
----------
-
-You can look at the Sample and Test directories, as well as the ../eg
-directory for examples.
-
-Perhaps the most important bit of advice we can give you is to watch
-
-    http://perl.oreilly.com
-
-for further information on how to get further information.
-
-Have the appropriate amount of fun.
+Perl is Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
+2013, 2014 by Larry Wall and others.  All rights reserved.
+
+
+
+ABOUT PERL
+==========
+
+Perl is a general-purpose programming language originally developed for
+text manipulation and now used for a wide range of tasks including
+system administration, web development, network programming, GUI
+development, and more.
+
+The language is intended to be practical (easy to use, efficient,
+complete) rather than beautiful (tiny, elegant, minimal).  Its major
+features are that it's easy to use, supports both procedural and
+object-oriented (OO) programming, has powerful built-in support for text
+processing, and has one of the world's most impressive collections of
+third-party modules.
+
+For an introduction to the language's features, see pod/perlintro.pod.
+
+For a discussion of the important changes in this release, see
+pod/perldelta.pod.
+
+There are also many Perl books available, covering a wide variety of topics,
+from various publishers.  See pod/perlbook.pod for more information.
+
+
+INSTALLATION
+============
+
+If you're using a relatively modern operating system and want to
+install this version of Perl locally, run the following commands:
+
+  ./Configure -des -Dprefix=$HOME/localperl
+  make test
+  make install
+
+This will configure and compile perl for your platform, run the regression
+tests, and install perl in a subdirectory "localperl" of your home directory.
+
+If you run into any trouble whatsoever or you need to install a customized
+version of Perl, you should read the detailed instructions in the "INSTALL"
+file that came with this distribution.  Additionally, there are a number of
+"README" files with hints and tips about building and using Perl on a wide
+variety of platforms, some more common than others.
+
+Once you have Perl installed, a wealth of documentation is available to you
+through the 'perldoc' tool.  To get started, run this command:
+
+  perldoc perl
+
+
+IF YOU RUN INTO TROUBLE
+=======================
+
+Perl is a large and complex system that's used for everything from
+knitting to rocket science.  If you run into trouble, it's quite
+likely that someone else has already solved the problem you're
+facing. Once you've exhausted the documentation, please report bugs to us
+using the 'perlbug' tool. For more information about perlbug, either type
+'perldoc perlbug' or just 'perlbug' on a line by itself.
+
+While it was current when we made it available, Perl is constantly evolving
+and there may be a more recent version that fixes bugs you've run into or
+adds new features that you might find useful.
+
+You can always find the latest version of perl on a CPAN (Comprehensive Perl
+Archive Network) site near you at http://www.cpan.org/src/
+
+If you want to submit a simple patch to the perl source, see the "SUPER
+QUICK PATCH GUIDE" in pod/perlhack.pod.
+
+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. :-)
+
+                                                       The author.
+
+
+LICENSING
+=========
+
+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., 51 Franklin Street, Fifth Floor,
+Boston, MA 02110-1301, 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.
+
+