blob: 6e12df48235850ef0253c02249ae0efc82ea4a20 [file] [log] [blame]
Guido van Rossum84c8c7f1995-08-28 02:44:24 +00001This is Python release 1.3b1
2============================
3
4I.e., the first beta release of Python 1.3.
Guido van Rossum627b2d71993-12-24 10:39:16 +00005
Guido van Rossum627b2d71993-12-24 10:39:16 +00006
Guido van Rossum91cb9d21995-04-10 11:47:38 +00007What's new in this release?
8---------------------------
Guido van Rossum627b2d71993-12-24 10:39:16 +00009
Guido van Rossum84c8c7f1995-08-28 02:44:24 +000010- Keyword parameters (see the last chapter of the tutorial).
11- Third argument to raise (the stacktrace to provide).
12- Faster function and method calls.
13- Jim Fulton's abstract object interface (Include/abstract.h).
14- Support for Tk 4.0 in Tkinter (Tkinter now supports keywords!).
15- Rewritten htmllib.py (HTML parser), with new formatter.py.
16- Rewritten rexec.py (restricted execution).
17- New modules ni.py and ihooks.py (package support and more).
18- And lots more that you'll have to discover on your own.
19
20
21Why is it called a beta release?
22--------------------------------
23
24Because it is. There's no documentation except the source. A few
25things are broken by the changes for keyword parameters (the access
26statement, the profiler, half of newmodule.c). It has only been tested
27on two Unix platforms (IRIX 5.3 and Solaris 2.4). The Mac and Windows
28sopport has not been fully re-integrated.
29
30
31Why do I release it anyway?
32---------------------------
33
34Because I'm also releasing a prototype of Grail, an extensible web
35browser that is its answer to Java and could become Python's "Killer
36App". Grail depends heavily on some features of Python 1.3 (such as
37keyword parameters). The release date for Grail is determined by other
38factors and I don't want to release it without full source.
39
40Oh, and I'm going on a two week holiday as well :-)
Guido van Rossum627b2d71993-12-24 10:39:16 +000041
Guido van Rossum627b2d71993-12-24 10:39:16 +000042
Guido van Rossum91cb9d21995-04-10 11:47:38 +000043What is Python anyway?
44----------------------
45
46Python is an interpreted object-oriented programming language, and is
47often compared to Tcl, Perl or Scheme. For a quick summary of what
48Python can mean for a UNIX/C programmer, read Misc/BLURB.LUTZ.
49
50
51If you don't read instructions
52------------------------------
53
54Congratulations on getting this far. :-)
55
56To start building right away (on UNIX): type "./configure" in the
57current directory and when it finishes, type "make". The section
58Build Instructions below is still recommended reading. :-)
59
60
61Copyright issues
62----------------
63
64Python is COPYRIGHTED but free to use for all. See the full copyright
65notice at the end of this file.
66
67The Python distribution is *not* affected by the GNU Public Licence
68(GPL). There are interfaces to some GNU code but these are entirely
69optional and no GNU code is distributed with Python. For all these
70packages, GPL-free public domain versions also exist.
71
Guido van Rossum627b2d71993-12-24 10:39:16 +000072
Guido van Rossumff840491995-09-18 22:02:47 +000073A modest plug
74=============
75
76
77Python exists, and is free, thanks to the contributed efforts of many
78people. The PSA was created to maximize the results of those efforts,
79by helping to coordinate them. The PSA operates web, ftp and email
80servers, organizes Python workshops, and engages in other activities
81that benefit the Python user community. The PSA is seeking support
82for these activities. See this URL for information on how to join:
83http://www.python.org/psa/Joining.html
84
Guido van Rossum627b2d71993-12-24 10:39:16 +000085
Guido van Rossum433c8ad1994-08-01 12:07:07 +000086Build instructions
Guido van Rossum91cb9d21995-04-10 11:47:38 +000087==================
Guido van Rossum627b2d71993-12-24 10:39:16 +000088
Guido van Rossum433c8ad1994-08-01 12:07:07 +000089Before you start building Python, you must first configure it. This
90entails (at least) running the script "./configure", which figures out
Guido van Rossum91cb9d21995-04-10 11:47:38 +000091your system configuration and creates several Makefiles. (It takes a
92minute or two -- please be patient!) When it's done, you are ready to
93run make. Typing "make" in the toplevel directory will recursively
94run make in each of the subdirectories Parser, Objects, Python and
95Modules, creating a library file in each one. The executable of the
96interpreter is built in the Modules subdirectory and moved up here
97when it is built. If you want or need to, you can also chdir into
98each subdirectory in turn and run make there manually (do the Modules
99subdirectory last!).
Guido van Rossum627b2d71993-12-24 10:39:16 +0000100
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000101NOTE: if you rerun the configure script with different options, remove
102all object files by running "make clean" before rebuilding. Believe
103it or not, "make clean" sometimes helps to clean up other inexplicable
104problems as well. Try it before sending in a bug report!
Guido van Rossum627b2d71993-12-24 10:39:16 +0000105
Guido van Rossum0a516c91994-09-12 10:58:40 +0000106
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000107Troubleshooting
108---------------
Guido van Rossum627b2d71993-12-24 10:39:16 +0000109
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000110If you run into trouble, see section 3 of the FAQ (file Misc/FAQ) for
111hints on what can go wrong, and how to fix it.
112
113
114Platform specific notes
115-----------------------
116
117Linux: It is possible that "makesetup" fails with an obscure sed
118 error. This is a bug in bash. Replace /bin/sh with /bin/ash
119 in both makesetup and Makefile.pre.in. This has been observed
120 in Slackware version 2.2, bash 1.14.3; Slackware 2.1 did not
121 have the problem.
122
123AIX: Read the file Misc/AIX-NOTES before trying to build.
124
125HP-UX: Read the file Misc/HPUX-NOTES if you want to be able to
126 use shared libraries for dynamically loaded modules.
127
128Minix: When using ack, use "CC=cc AR=aal RANLIB=: ./configure"!
129
130SCO: 1) Everything works much better if you add -U__STDC__ to the
131 defs. This is because all the SCO header files are broken.
132 Anything that isn't mentioned in the C standard it's
133 conditionally excluded when __STDC__ is defined.
134
135 2) Due to the U.S. export restrictions, SCO broke the crypt
136 stuff out into a separate library, libcrypt_i.a so the LIBS
137 needed be set to:
138
139 LIBS=' -lsocket -lcrypt_i'
140
141
142Configuring the set of built-in modules
143---------------------------------------
Guido van Rossum19e0c261995-01-17 16:36:34 +0000144
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000145You can configure the interpreter to contain fewer or more built-in
146modules by editing the file Modules/Setup. This file is initially
147copied (when the toplevel Makefile makes Modules/Makefile for the
148first time) from Setup.in; if it does not exist yet, make a copy
149yourself. Never edit Setup.in -- always edit Setup. Read the
150comments in the file for information on what kind of edits you can
151make. When you have edited Setup, Makefile and config.c in Modules
152will automatically be rebuilt the next time you run make in the
Guido van Rossum9444ce01994-10-20 22:10:23 +0000153toplevel directory.
Guido van Rossum627b2d71993-12-24 10:39:16 +0000154
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000155Especially on SGI IRIX, there are modules that interface to many SGI
156specific system libraries, e.g. the GL library and the audio hardware.
157
158
159Setting the optimization/debugging options
160------------------------------------------
161
162If you want to change the optimization/debugging options for the C
163compiler, assign to the OPT variable on the toplevel make command;
164e.g. "make OPT=-g" will build a debugging version of Python on most
165platforms. The default is OPT=-O; a value for OPT in the environment
166when the configure script is run overrides this default (likewise for
167CC; and the initial value for LIBS is used as the base set of
168libraries to link with).
169
170
171Testing
172-------
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000173
174To test the interpreter that you have just built, type "make test".
175This runs the test set silently, twice (once with no compiled files,
176once with the compiled files left by the previous test run). Each
177test run should print "All tests OK." and nothing more. (The test set
178does not test the built-in modules, but will find most other problems
179with the interpreter.)
180
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000181IMPORTANT: If the tests fail and you decide to mail a bug report,
182*don't* include the output of "make test". It is useless. Run the
183following command instead:
184
185 PYTHONPATH=../Lib:../Lib/test:./Modules ./python -c 'import testall'
186
187(substituting the top of the source tree for .. if you built in a
188different directory). This gives the output of the tests and shows
189which test failed.
190
191
192Installing
193----------
194
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000195To install the interpreter as /usr/local/bin/python, type "make
196install". To install the library as /usr/local/lib/python, type "make
197libinstall". To install the manual page as
198/usr/local/man/man1/python.1, type "make maninstall". To install the
199Emacs editing mode for python, manually copy the file
200Misc/python-mode.el to your local Emacs lisp directory. The directory
201/usr/local can be overridden at configuration time by passing
202--prefix=DIRECTORY to the configure script, or at make time by passing
203"prefix=DIRECTORY" to make. See below for more information on --prefix.
204
205If you plan to do development of extension modules or to embed Python
206in another application and don't want to reference the original source
207tree, you can type "make inclinstall" and "make libainstall" to
208install the include files and lib*.a files, respectively, as
209/usr/local/include/Py/*.h and /usr/local/lib/python/lib/lib*.a. The
210make libainstall target also installs copies of several other files
211used or produced during the build process which are needed to build
212extensions or to generate their Makefiles.
213
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000214
215Configuration options and variables
216-----------------------------------
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000217
218Some special cases are handled by passing environment variables or
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000219options to the configure script.
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000220
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000221NOTE: if you rerun the configure script with different options, remove
222all object files by running "make clean" before rebuilding.
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000223
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000224--with(out)-gcc: The configure script uses gcc (the GNU C compiler) if
225 it finds it. If you don't want this, or if this compiler is
226 installed but broken on your platform, pass the option
227 --without-gcc. You can also pass "CC=cc" (or whatever the
228 name of the proper C compiler is) in the environment, but the
229 advantage of using --without-gcc is that this option is
230 remembered by the config.status script for its --recheck
231 option.
Guido van Rossum76be6ed1995-01-02 18:33:54 +0000232
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000233--prefix, --exec-prefix: If you want to install the binaries and the
234 Python library somewhere else than in /usr/local/{bin,lib},
235 you can pass the option --prefix=DIRECTORY; the interpreter
236 binary will be installed as DIRECTORY/bin/python and the
237 library files as DIRECTORY/lib/python/*. If you pass
238 --exec-prefix=DIRECTORY (as well) this overrides the
239 installation prefix for architecture-dependent files (like the
240 interpreter binary). Note that --prefix=DIRECTORY also
241 affects the default module search path (sys.path), when
242 Modules/config.c is compiled. Passing make the option
243 prefix=DIRECTORY (and/or exec_prefix=DIRECTORY) overrides the
244 prefix set at configuration time; this may be more convenient
245 than re-running the configure script if you change your mind
246 about the install prefix...
Guido van Rossum76be6ed1995-01-02 18:33:54 +0000247
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000248--with-readline: You can use the GNU readline library to improve the
249 interactive user interface: this gives you line editing and
250 command history when calling python interactively. You need
251 to configure build the GNU readline library before running the
252 configure script. Its sources are not distributed with
253 Python; you can ftp them from any GNU mirror site, or from its
254 home site:
255 <URL:ftp://slc2.ins.cwru.edu/pub/dist/readline-2.0.tar.gz> (or
256 a higher version number -- using version 1.x is not
257 recommended).
Guido van Rossum76be6ed1995-01-02 18:33:54 +0000258
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000259 A GPL-free version was posted to comp.sources.misc in volume
260 31 and is widely available from FTP archive sites, e.g.
261 <URL:ftp://gatekeeper.dec.com/.b/usenet/comp.sources.misc/
262 volume31/editline/part01.Z>
263
264 Pass the Python configure script the option
265 --with-readline=DIRECTORY where DIRECTORY is the absolute
266 pathname of the directory where you've built the readline
267 library. Some hints on building and using the readline
268 library are in the FAQ (file Misc/FAQ).
269
270--with-thread: On SGI IRIX, and on Sun SOLARIS 2, you can use multiple
271 threads. To enable this, pass --with-thread. In the
272 Modules/Setup file, enable the thread module. (Threads aren't
273 enabled automatically because there are run-time penalties
274 when support for them is compiled in even if you don't use
275 them.)
276
277--with-sgi-dl: On SGI IRIX 4, dynamic loading of extension modules is
278 supported by the "dl" library by Jack Jansen, which is
279 ftp'able from <URL:ftp://ftp.cwi.nl/pub/dynload/dl-1.6.tar.Z>.
280 This is enabled (after you've ftp'ed and compiled the dl
281 library!) by passing --with-sgi-dl=DIRECTORY where DIRECTORY
282 is the absolute pathname of the dl library. (Don't bother on
283 IRIX 5, it already has dynamic linking using SunOS style
284 shared libraries.) Support for this feature is deprecated.
285
286--with-dl-dld: Dynamic loading of modules is rumoured to be supported
287 on some other systems: VAX (Ultrix), Sun3 (SunOS 3.4), Sequent
288 Symmetry (Dynix), and Atari ST. This is done using a
289 combination of the GNU dynamic loading package
290 (<URL:ftp://ftp.cwi.nl/pub/dynload/dl-dld-1.1.tar.Z>) and an
291 emulation of the SGI dl library mentioned above (the emulation
292 can be found at
293 <URL:ftp://ftp.cwi.nl/pub/dynload/dld-3.2.3.tar.Z>). To
294 enable this, ftp and compile both libraries, then call the
295 configure passing it the option
296 --with-dl-dld=DL_DIRECTORY,DLD_DIRECTORY where DL_DIRECTORY is
297 the absolute pathname of the dl emulation library and
298 DLD_DIRECTORY is the absolute pathname of the GNU dld library.
299 (Don't bother on SunOS 4 or 5, they already have dynamic
300 linking using shared libraries.) Support for this feature is
301 deprecated.
302
303--with-libm, --with-libc: It is possible to specify alternative
304 versions for the Math library (default -lm) and the C library
305 (default the empty string) using the options
306 --with-libm=STRING and --with-libc=STRING, respectively. E.g.
307 if your system requires that you pass -lc_s to the C compiler
308 to use the shared C library, you can pass --with-libc=-lc_s.
309 These libraries are passed after all other libraries, the C
310 library last.
Guido van Rossum76be6ed1995-01-02 18:33:54 +0000311
312
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000313Extensions
314----------
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000315
316You can also build an "extended" interpreter, using modules that are
317not contained in the Modules directory. Extensions are distributed as
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000318a separate tar file (currently extensions.tar.gz). See the README
319file there.
Guido van Rossumaf5b83e1995-01-04 19:02:35 +0000320
321
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000322Building for multiple architectures (using the VPATH feature)
323-------------------------------------------------------------
324
325If your file system is shared between multiple architectures, it
326usually is not necessary to make copies of the sources for each
327architecture you want to support. If the make program supports the
328VPATH feature, you can create an empty build directory for each
329architecture, and in each directory run the configure script (on the
330appropriate machine with the appropriate options). This creates the
331necessary subdirectories and the Makefiles therein. The Makefiles
332contain a line VPATH=... which points to directory containing the
Guido van Rossum6b111b01994-10-11 15:03:34 +0000333actual sources. (On SGI systems, use "smake" instead of "make" if you
334use VPATH -- don't try gnumake.)
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000335
336For example, the following is all you need to build a minimal Python
337in /usr/tmp/python (assuming ~guido/src/python is the toplevel
338directory and you want to build in /usr/tmp/python):
339
340 $ mkdir /usr/tmp/python
341 $ cd /usr/tmp/python
342 $ ~guido/src/python/configure
343 [...]
344 $ make
345 [...]
346 $
347
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000348Note that Modules/Makefile copies the original Setup file to the build
349directory if it finds no Setup file there. This means that you can
350edit the Setup file for each architecture independently. For this
351reason, subsequent changes to the original Setup file are not tracked
352automatically, as they might overwrite local changes. To force a copy
353of a changed original Setup file, delete the target Setup file. (The
354makesetup script supports multiple input files, so if you want to be
355fancy you can change the rules to create an empty Setup.local if it
356doesn't exist and run it with arguments $(srcdir)/Setup Setup.local;
357however this assumes that you only need to add modules.)
358
359
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000360Building on non-UNIX systems
361----------------------------
362
363On non-UNIX systems, you will have to fake the effect of running the
364configure script manually. A good start is to copy the file
365config.h.in to config.h and edit the latter to reflect the actual
366configuration of your system. Most symbols must simply be defined as
3671 only if the corresponding feature is present and can be left alone
368otherwise; however RETSIGTYPE must always be defined, either as int or
369as void, and the *_t type symbols must be defined as some variant of
370int if they need to be defined at all. Then arrange that the symbol
371HAVE_CONFIG_H is defined during compilation (usually by passing an
372argument of the form `-DHAVE_CONFIG_H' to the compiler, but this is
373necessarily system-dependent).
374
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000375I have tried to collect instructions, Makefiles and additional sources
376for various platforms in this release. The following directories
377exist:
378
379Mac/ Apple Macintosh, using THINK C 6.0 or MPW 3.2.
380Dos/ MS-DOS and Windows 3.1, using Microsoft C.
381Nt/ Windows NT, using Microsoft Visual C/C++.
382Os2/ OS/2.
383
384Most of these instructions were last tested with a previous Python
385release, so you may still experience occasional problems. If you have
386fixes or suggestions, please let me know and I'll try to incorporate
387them in the next release.
388
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000389
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000390
391Miscellaneous issues
392====================
393
394
395Documentation
396-------------
397
398All documentation is provided in the subdirectory Doc in the form of
399LaTeX files. In order of importance for new users: Tutorial (tut),
400Library Reference (lib), Language Reference (ref), Extending (ext).
401Especially the Library Reference is of immense value since much of
402Python's power (including the built-in data types and functions!) is
403described here.
404
405To print the documentation from the LaTeX files, chdir into the Doc
406subdirectory, type "make" (let's hope you have LaTeX installed!), and
407send the four resulting PostScript files (tut.ps, lib.ps, ref.ps, and
408ext.ps) to the printer. See the README file there.
409
410All documentation is also available on-line via the World-Wide Web
411(WWW): <URL:http://www.cwi.nl/~guido/Python.html>. It can also be
412downloaded separately from the ftp archives (see below) in Emacs INFO,
413HTML or PostScript form -- see the FAQ (file Misc/FAQ) for more info.
414
415
416Emacs mode
417----------
418
419There's an excellent Emacs editing mode for Python code; see the file
420Misc/python-mode.el. Originally written by Tim Peters, who's no
421longer on the net, it is now maintained by Barry Warsaw
422<bwarsaw@cnri.reston.va.com>.
423
Guido van Rossum3c294ca1995-06-14 18:17:22 +0000424BTW, if you want to use font-lock for Python sources, here's something
425to put in your .emacs file:
426
427 (defun my-python-mode-hook ()
428 (setq font-lock-keywords python-font-lock-keywords)
429 (font-lock-mode 1))
430 (add-hook 'python-mode-hook 'my-python-mode-hook)
431
432
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000433
434Bug reports
435-----------
436
437Bugs are best reported to the comp.lang.python newsgroup or the Python
438mailing list -- see the section "Newsgroup and mailing list" below.
439Before posting, read the FAQ (file Misc/FAQ) first to see if your
440problem has already been answered!
441
442
443Ftp access
444----------
445
446Python's "home ftp site" is ftp.cwi.nl, directory pub/python. See the
447FAQ (file Misc/FAQ) for a list of other ftp sites carrying the Python
448distribution.
449
450
451Newsgroup and mailing list
452--------------------------
453
454There are a newsgroup and a mailing list devoted to Python
455programming, design and bugs. The newsgroup, comp.lang.python,
456contains exactly the same messages as the mailing list. To subscribe
457to the mailing list, send mail containing your real name and e-mail
458address to "python-list-request@cwi.nl" (a real person reads these
459messages, so no LISTPROC or Majordomo commands, please).
460
461
462The Tk interface
463----------------
464
465Tk (the user interface component of John Ousterhout's Tcl language) is
466also usable from Python. Since this requires that you first build and
467install Tcl/Tk, the Tk interface is not enabled by default. It
Guido van Rossum84c8c7f1995-08-28 02:44:24 +0000468requires Tcl 7.4 and Tk 4.0. (Support for Tk 3.6 and Tcl 7.3 can be
469found in Lib/tk3inter/.)
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000470
471To enable the Python/Tk interface, once you've built and installed
472Tcl/Tk, all you need to do is edit two lines in Modules/Setup; search
473for the string "tkinter". Un-comment one (normally the first) of the
474lines beginning with "#tkinter" and un-comment the line beginning with
475"#TKPATH". (If you have installed Tcl/Tk in unusual places you will
476have to edit the first line as well to fix the -I and -L options.)
477See the Build Instructions above for more details.
478
479There is little documentation. Begin with fetching the "Tk Lifesaver"
Guido van Rossum3c294ca1995-06-14 18:17:22 +0000480document, e.g. <URL:ftp://ftp.cwi.nl/pub/python/doc/tkinter-doc.tar.gz>
481(a gzipped tar file containing a PostScript file). There are demos in
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000482the Demo/tkinter directory, in the subdirectories guido, matt and www.
483
484Note that there's a Python module called "Tkinter" (capital T) which
485lives in Lib/tkinter/Tkinter.py, and a C module called "tkinter"
486(lower case t) which lives in Modules/tkintermodule.c. Demos and
487normal Tk applications only import the Python Tkinter module -- only
488the latter uses the C tkinter module directly. In order to find the C
489tkinter module, it must be compiled and linked into the Python
490interpreter -- the tkinter line in the Setup file does this. In order
491to find the Python Tkinter module, sys.path must be set correctly --
492the TKPATH assignment in the Setup file takes care of this, but only
493if you install Python properly ("make install libinstall"). (You can
494also use dynamic loading for the C tkinter module, in which case you
495must manually fix up sys.path or set $PYTHONPATH for the Python
496Tkinter module.)
497
Guido van Rossum84c8c7f1995-08-28 02:44:24 +0000498See <URL:http://www.sunlabs.com/research/tcl/> for more info on where
499to get Tcl/Tk.
500
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000501
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000502Distribution structure
503----------------------
504
505Most subdirectories have their own README file. Most files have
506comments.
507
508ChangeLog A raw list of changes since the first 1.0.0 BETA release
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000509Contrib/ Interesting or useful Python code contributed by others
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000510Demo/ Demonstration scripts, modules and programs
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000511Doc/ Documentation (LaTeX sources)
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000512Extensions/ Extension modules (distributed separately)
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000513Grammar/ Input for the parser generator
514Include/ Public header files
515Lib/ Python library modules
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000516Makefile.in Source from which config.status creates Makefile
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000517Misc/ Miscellaneous files
518Modules/ Implementation of most built-in modules
519Objects/ Implementation of most built-in object types
520Parser/ The parser and tokenizer and their input handling
521Python/ The "compiler" and interpreter
522README The file you're reading now
Guido van Rossume109aa71995-03-09 14:12:10 +0000523Tools/ Some useful programs written in Python
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000524acconfig.h Additional input for the autoheader program
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000525config.h.in Source from which config.status creates config.h
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000526configure Configuration shell script (GNU autoconf output)
527configure.in Configuration specification (GNU autoconf input)
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000528
529The following files will (may) be created in the toplevel directory by
530the configuration and build processes:
531
532Makefile Build rules
533config.cache cache of configuration variables
534config.h Configuration header
535config.log log from last configure run
536config.status status from last run of configure script
537python The executable interpreter
538tags, TAGS Tags files for vi and Emacs
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000539
540
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000541Author's address
542----------------
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000543
544Guido van Rossum
545CWI, dept. CST
546P.O. Box 94079
5471090 GB Amsterdam
548The Netherlands
549
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000550E-mail: guido@cwi.nl
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000551
552
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000553
554Copyright notice
555================
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000556
557The Python source is copyrighted, but you can freely use and copy it
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000558as long as you don't change or remove the copyright notice:
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000559
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000560----------------------------------------------------------------------
Guido van Rossumaf5b83e1995-01-04 19:02:35 +0000561Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam,
562The Netherlands.
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000563
564 All Rights Reserved
565
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000566Permission to use, copy, modify, and distribute this software and its
567documentation for any purpose and without fee is hereby granted,
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000568provided that the above copyright notice appear in all copies and that
Guido van Rossumc561e5d1994-08-23 13:52:46 +0000569both that copyright notice and this permission notice appear in
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000570supporting documentation, and that the names of Stichting Mathematisch
571Centrum or CWI not be used in advertising or publicity pertaining to
572distribution of the software without specific, written prior permission.
573
574STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
575THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
576FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
577FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
578WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
579ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
580OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000581----------------------------------------------------------------------
Guido van Rossum433c8ad1994-08-01 12:07:07 +0000582
583
Guido van Rossum91cb9d21995-04-10 11:47:38 +0000584--Guido van Rossum, CWI, Amsterdam <mailto:guido@cwi.nl>
585<http://www.cwi.nl/~guido/>