source: trunk/third/perl/README.plan9 @ 18450

Revision 18450, 5.0 KB checked in by zacheiss, 22 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r18449, which included commits to RCS files with non-trunk default branches.
Line 
1If you read this file _as_is_, just ignore the funny characters you see.
2It is written in the POD format (see pod/perlpod.pod) which is specially
3designed to be readable as is.
4
5=head1 NAME
6
7perlplan9 - Plan 9-specific documentation for Perl
8
9=head1 DESCRIPTION
10
11These are a few notes describing features peculiar to
12Plan 9 Perl. As such, it is not intended to be a replacement
13for the rest of the Perl 5 documentation (which is both
14copious and excellent). If you have any questions to
15which you can't find answers in these man pages, contact
16Luther Huffman at lutherh@stratcom.com and we'll try to
17answer them.
18
19=head2 Invoking Perl
20
21Perl is invoked from the command line as described in
22L<perl>. Most perl scripts, however, do have a first line
23such as "#!/usr/local/bin/perl". This is known as a shebang
24(shell-bang) statement and tells the OS shell where to find
25the perl interpreter. In Plan 9 Perl this statement should be
26"#!/bin/perl" if you wish to be able to directly invoke the
27script by its name.
28     Alternatively, you may invoke perl with the command "Perl"
29instead of "perl". This will produce Acme-friendly error
30messages of the form "filename:18".
31
32Some scripts, usually identified with a *.PL extension, are
33self-configuring and are able to correctly create their own
34shebang path from config information located in Plan 9
35Perl. These you won't need to be worried about.
36
37=head2 What's in Plan 9 Perl
38
39Although Plan 9 Perl currently only  provides static
40loading, it is built with a number of useful extensions.
41These include Opcode, FileHandle, Fcntl, and POSIX. Expect
42to see others (and DynaLoading!) in the future.
43
44=head2 What's not in Plan 9 Perl
45
46As mentioned previously, dynamic loading isn't currently
47available nor is MakeMaker. Both are high-priority items.
48
49=head2 Perl5 Functions not currently supported in Plan 9 Perl
50
51Some, such as C<chown> and C<umask> aren't provided
52because the concept does not exist within Plan 9. Others,
53such as some of the socket-related functions, simply
54haven't been written yet. Many in the latter category
55may be supported in the future.
56
57The functions not currently implemented include:
58
59    chown, chroot, dbmclose, dbmopen, getsockopt,
60    setsockopt, recvmsg, sendmsg, getnetbyname,
61    getnetbyaddr, getnetent, getprotoent, getservent,
62    sethostent, setnetent, setprotoent, setservent,
63    endservent, endnetent, endprotoent, umask
64
65There may be several other functions that have undefined
66behavior so this list shouldn't be considered complete.
67
68=head2 Signals in Plan 9 Perl
69
70For compatibility with perl scripts written for the Unix
71environment, Plan 9 Perl uses the POSIX signal emulation
72provided in Plan 9's ANSI POSIX Environment (APE). Signal stacking
73isn't supported. The signals provided are:
74
75    SIGHUP, SIGINT, SIGQUIT, SIGILL, SIGABRT,
76    SIGFPE, SIGKILL, SIGSEGV, SIGPIPE, SIGPIPE, SIGALRM,
77    SIGTERM, SIGUSR1, SIGUSR2, SIGCHLD, SIGCONT,
78    SIGSTOP, SIGTSTP, SIGTTIN, SIGTTOU
79
80=head1 COMPILING AND INSTALLING PERL ON PLAN 9
81
82WELCOME to Plan 9 Perl, brave soul!
83
84   This is a preliminary alpha version of Plan 9 Perl. Still to be
85implemented are MakeMaker and DynaLoader. Many perl commands are
86missing or currently behave in an inscrutable manner. These gaps will,
87with perseverance and a modicum of luck, be remedied in the near
88future.To install this software:
89
901. Create the source directories and libraries for perl by running the
91plan9/setup.rc command (i.e., located in the plan9 subdirectory).
92Note: the setup routine assumes that you haven't dearchived these
93files into /sys/src/cmd/perl. After running setup.rc you may delete
94the copy of the source you originally detarred, as source code has now
95been installed in /sys/src/cmd/perl. If you plan on installing perl
96binaries for all architectures, run "setup.rc -a".
97
982. After making sure that you have adequate privileges to build system
99software, from /sys/src/cmd/perl/5.00301 (adjust version
100appropriately) run:
101
102        mk install
103
104If you wish to install perl versions for all architectures (68020,
105mips, sparc and 386) run:
106
107        mk installall
108
1093. Wait. The build process will take a *long* time because perl
110bootstraps itself. A 75MHz Pentium, 16MB RAM machine takes roughly 30
111minutes to build the distribution from scratch.
112
113=head2 Installing Perl Documentation on Plan 9
114
115This perl distribution comes with a tremendous amount of
116documentation. To add these to the built-in manuals that come with
117Plan 9, from /sys/src/cmd/perl/5.00301 (adjust version appropriately)
118run:
119
120        mk man
121
122To begin your reading, start with:
123
124        man perl
125
126This is a good introduction and will direct you towards other man
127pages that may interest you.
128
129(Note: "mk man" may produce some extraneous noise. Fear not.)
130
131=head1 BUGS
132
133"As many as there are grains of sand on all the beaches of the
134world . . ." - Carl Sagan
135
136=head1 Revision date
137
138This document was revised 09-October-1996 for Perl 5.003_7.
139
140=head1 AUTHOR
141
142Direct questions, comments, and the unlikely bug report (ahem) direct
143comments toward:
144
145Luther Huffman, lutherh@stratcom.com,
146Strategic Computer Solutions, Inc.             
Note: See TracBrowser for help on using the repository browser.