Commit | Line | Data |
0a7c7f4f |
1 | |
2 | Perl/Pollution/Portability Version 1.0005 |
3 | |
4 | Copyright (C) 1999, Kenneth Albanowski. This archive may be used and |
5 | distributed under the same license as any version of Perl. |
6 | |
7 | This is not an actual Perl module, but rather a distribution containing a |
8 | small header file designed to aid the portability of the XS modules you |
9 | write. The Makefile.PL is provided primarily to aid in testing the code. |
10 | (Please notify me about any compile warnings or errors, or test failures.) |
11 | |
12 | Perl has changed over time, gaining new features, new functions, increasing |
13 | its flexibility, and reducing the impact on the C namespace environment |
14 | (reduced pollution). This header attempts to bring some of the newer Perl |
15 | features to older versions of Perl, so that you can worry less about |
16 | keeping track of old releases, but users can still reap the benefit. |
17 | |
18 | Why you should use ppport.h in modern code: so that your code will work |
19 | with the widest range of Perl interpreters possible, without significant |
20 | additional work. |
21 | |
22 | Why you should attempt older code to fully use ppport.h: because the |
23 | reduced pollution of newer Perl versions is an important thing, so |
24 | important that the old polluting ways of original Perl modules will not be |
25 | supported very far into the future, and your module will almost certainly |
26 | break! By adapting to it now, you'll gained compatibility and a sense of |
27 | having done the electronic ecology some good. |
28 | |
29 | |
30 | How to use ppport.h: Don't direct the user to download Devel::PPPort, and |
31 | don't make ppport.h optional. Rather, just take the most recent copy of |
32 | ppport.h that you can find (probably in Devel::PPPort on CPAN), copy it |
33 | into your project, adjust your project to use it, and distribute the header |
34 | along with your module. |
35 | |
36 | The file may be able to help you make use of itself. It's got some internal |
37 | documentation, and even an automated script to determine how it could be |
38 | used. However, ppport.h is a work in progress, and may not include every |
39 | feature or macro definition. Feel free to add missing parts, just make sure |
40 | to adjust the version mark so that its clear you've branched from the |
41 | original version. |
42 | |
43 | - Kenneth Albanowski <kjahds@kjahds.com>, |
44 | February, 1999 |