Commit | Line | Data |
---|---|---|
396e9e6f | 1 | |
eeb010ab | 2 | PLAN9/PERLPLAN9(1) (perl 5.003, patch 05) PLAN9/PERLPLAN9(1) |
396e9e6f | 3 | |
4 | N\bN\bN\bNA\bA\bA\bAM\bM\bM\bME\bE\bE\bE | |
5 | perlplan9 - Plan 9-specific documentation for Perl | |
6 | ||
7 | D\bD\bD\bDE\bE\bE\bES\bS\bS\bSC\bC\bC\bCR\bR\bR\bRI\bI\bI\bIP\bP\bP\bPT\bT\bT\bTI\bI\bI\bIO\bO\bO\bON\bN\bN\bN | |
8 | These are a few notes describing features peculiar to Plan 9 | |
9 | Perl. As such, it is not intended to be a replacement for | |
10 | the rest of the Perl 5 documentation (which is both copious | |
11 | and excellent). If you have any questions to which you can't | |
12 | find answers in these man pages, contact Luther Huffman at | |
13 | lutherh@stratcom.com and we'll try to answer them. | |
14 | ||
15 | I\bI\bI\bIn\bn\bn\bnv\bv\bv\bvo\bo\bo\bok\bk\bk\bki\bi\bi\bin\bn\bn\bng\bg\bg\bg P\bP\bP\bPe\be\be\ber\br\br\brl\bl\bl\bl | |
16 | ||
17 | Perl is invoked from the command line as described in the | |
18 | _\bp_\be_\br_\bl manpage. Most perl scripts, however, do have a first | |
19 | line such as "#!/usr/local/bin/perl". This is known as a | |
20 | shebang (shell-bang) statement and tells the OS shell where | |
21 | to find the perl interpreter. In Plan 9 Perl this statement | |
22 | should be "#!/bin/perl" if you wish to be able to directly | |
23 | invoke the script by its name. | |
24 | Alternatively, you may invoke perl with the command | |
eeb010ab | 25 | "Perl" instead of "perl". This will produce Acme-friendly |
396e9e6f | 26 | error messages of the form "filename:18". |
27 | ||
28 | Some scripts, usually identified with a *.PL extension, are | |
29 | self-configuring and are able to correctly create their own | |
30 | shebang path from config information located in Plan 9 Perl. | |
31 | These you won't need to be worried about. | |
32 | ||
33 | W\bW\bW\bWh\bh\bh\bha\ba\ba\bat\bt\bt\bt'\b'\b'\b's\bs\bs\bs i\bi\bi\bin\bn\bn\bn P\bP\bP\bPl\bl\bl\bla\ba\ba\ban\bn\bn\bn 9\b9\b9\b9 P\bP\bP\bPe\be\be\ber\br\br\brl\bl\bl\bl | |
34 | ||
35 | Although Plan 9 Perl currently only provides static | |
36 | loading, it is built with a number of useful extensions. | |
760ac839 LW |
37 | These include Opcode, FileHandle, Fcntl, and POSIX. Expect |
38 | to see others (and DynaLoading!) in the future. | |
396e9e6f | 39 | |
40 | W\bW\bW\bWh\bh\bh\bha\ba\ba\bat\bt\bt\bt'\b'\b'\b's\bs\bs\bs n\bn\bn\bno\bo\bo\bot\bt\bt\bt i\bi\bi\bin\bn\bn\bn P\bP\bP\bPl\bl\bl\bla\ba\ba\ban\bn\bn\bn 9\b9\b9\b9 P\bP\bP\bPe\be\be\ber\br\br\brl\bl\bl\bl | |
41 | ||
42 | As mentioned previously, dynamic loading isn't currently | |
43 | available nor is MakeMaker. Both are high-priority items. | |
44 | ||
45 | P\bP\bP\bPe\be\be\ber\br\br\brl\bl\bl\bl5\b5\b5\b5 F\bF\bF\bFu\bu\bu\bun\bn\bn\bnc\bc\bc\bct\bt\bt\bti\bi\bi\bio\bo\bo\bon\bn\bn\bns\bs\bs\bs n\bn\bn\bno\bo\bo\bot\bt\bt\bt c\bc\bc\bcu\bu\bu\bur\br\br\brr\br\br\bre\be\be\ben\bn\bn\bnt\bt\bt\btl\bl\bl\bly\by\by\by s\bs\bs\bsu\bu\bu\bup\bp\bp\bpp\bp\bp\bpo\bo\bo\bor\br\br\brt\bt\bt\bte\be\be\bed\bd\bd\bd | |
46 | ||
47 | Some, such as chown and umask aren't provided because the | |
48 | concept does not exist within Plan 9. Others, such as some | |
49 | of the socket-related functions, simply haven't been written | |
50 | yet. Many in the latter category may be supported in the | |
51 | future. | |
52 | ||
53 | The functions not currently implemented include: | |
54 | ||
eeb010ab | 55 | Page 1 9/Oct/96 (printed 10/9/96) |
396e9e6f | 56 | |
eeb010ab | 57 | PLAN9/PERLPLAN9(1) (perl 5.003, patch 05) PLAN9/PERLPLAN9(1) |
396e9e6f | 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 | ||
65 | There may be several other functions that have undefined | |
66 | behavior so this list shouldn't be considered complete. | |
67 | ||
68 | S\bS\bS\bSi\bi\bi\big\bg\bg\bgn\bn\bn\bna\ba\ba\bal\bl\bl\bls\bs\bs\bs | |
69 | ||
70 | For compatibility with perl scripts written for the Unix | |
71 | environment, Plan 9 Perl uses the POSIX signal emulation | |
72 | provided in Plan 9's ANSI POSIX Environment (APE). Signal | |
73 | stacking isn'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 | B\bB\bB\bBU\bU\bU\bUG\bG\bG\bGS\bS\bS\bS | |
81 | "As many as there are grains of sand on all the beaches of | |
82 | the world . . ." - Carl Sagan | |
83 | ||
84 | R\bR\bR\bRe\be\be\bev\bv\bv\bvi\bi\bi\bis\bs\bs\bsi\bi\bi\bio\bo\bo\bon\bn\bn\bn d\bd\bd\bda\ba\ba\bat\bt\bt\bte\be\be\be | |
eeb010ab | 85 | This document was revised 09-October-1996 for Perl 5.003_7. |
396e9e6f | 86 | |
87 | A\bA\bA\bAU\bU\bU\bUT\bT\bT\bTH\bH\bH\bHO\bO\bO\bOR\bR\bR\bR | |
88 | Luther Huffman, lutherh@stratcom.com | |
89 | ||
eeb010ab | 90 | Page 2 9/Oct/96 (printed 10/9/96) |
396e9e6f | 91 |