summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
Diffstat (limited to 'README')
-rw-r--r--README77
1 files changed, 77 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000000..ae23b4bf32
--- /dev/null
+++ b/README
@@ -0,0 +1,77 @@
+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.