removed GPL mumbo jumbo

This commit is contained in:
Guido van Rossum 1995-03-10 16:19:31 +00:00
parent deaa1054fa
commit a8a8d4aadd
2 changed files with 134 additions and 109 deletions

200
Misc/FAQ
View File

@ -3,12 +3,14 @@ Newsgroups: comp.lang.python,comp.answers,news.answers
Followup-to: comp.lang.python
From: guido@cwi.nl (Guido van Rossum)
Reply-to: guido@cwi.nl (Guido van Rossum)
Expires: Sat, 1 Apr 1995 00:00:00 GMT
Supersedes: <D1sGoJ.Mps@cwi.nl>
Approved: news-answers-request@MIT.Edu
Archive-name: python-faq/part1
Submitted-by: Guido van Rossum <guido@cwi.nl>
Version: 1.20
Last-modified: 7 Februari 1995
Version: 1.20++
Last-modified: 16 Februari 1995
This article contains answers to Frequently Asked Questions about
Python (an object-oriented interpreted programming language -- see
@ -67,12 +69,14 @@ Here's an overview of the questions per chapter:
1.5. Q. Are there other ftp sites that mirror the Python distribution?
1.6. Q. Is there a newsgroup or mailing list devoted to Python?
1.7. Q. Is there a WWW page devoted to Python?
1.8. Q. Is there a book on Python, or will there be one out soon?
1.9. Q. Are there any published articles about Python that I can quote?
1.10. Q. Are there short introductory papers or talks on Python?
1.11. Q. How does the Python version numbering scheme work?
1.12. Q. Are there other ftp sites that carry Python related material?
1.13. Q. Are there copyright restrictions on the use of Python?
1.8. Q. Is the Python documentation available on the WWW?
1.9. Q. Is there a book on Python, or will there be one out soon?
1.10. Q. Are there any published articles about Python that I can quote?
1.11. Q. Are there short introductory papers or talks on Python?
1.12. Q. How does the Python version numbering scheme work?
1.13. Q. How do I get a beta test version of Python?
1.14. Q. Are there other ftp sites that carry Python related material?
1.15. Q. Are there copyright restrictions on the use of Python?
2. Python in the real world
2.1. Q. How many people are using Python?
@ -266,15 +270,17 @@ HTML version of the index can be found in the file index.html,
1.4. Q. How do I get documentation on Python?
A. The latest Python documentation set is always available by
anonymous ftp, e.g.
A. The LaTeX source for the documentation is part of the source
distribution. If you don't have LaTeX, the latest Python
documentation set is always available by anonymous ftp, e.g.
<URL:ftp://ftp.cwi.nl/pub/python/pythondoc-ps1.1.tar.gz>. It is a
gzipped tar file containing PostScript files of the reference manual,
the library manual, and the tutorial. Note that the library manual is
the most important one of the set, as much of Python's power stems
from the standard or built-in types, functions and modules, all of
which are described here. PostScript for a high-level description of
Python is in the file nluug-paper.ps.
Python is in the file nluug-paper.ps (a separate file on the ftp
site).
1.5. Q. Are there other ftp sites that mirror the Python distribution?
@ -310,17 +316,35 @@ MH, you could use "inc -file file".
1.7. Q. Is there a WWW page devoted to Python?
A. The official Python home page is
<URL:http://www.cwi.nl/~guido/Python.html>. Michael McLay at NIST
maintains a Python page at <URL:http://www.eeel.nist.gov/python/>.
A. Yes, <URL:http://www.cwi.nl/~guido/Python.html> is the official
Python home page. Michael McLay at NIST maintains a Python page at
<URL:http://www.eeel.nist.gov/python/>. And finally the emerging
Python Software Association has a preliminary web server at
<URL:http://www.cminds.com/python/> (eventually to be moved to
somewhere under python.org).
1.8. Q. Is there a book on Python, or will there be one out soon?
1.8. Q. Is the Python documentation available on the WWW?
A. I am writing one. Addison-Wesley is interested. Optimistically,
it will be ready for the press by mid-1995. Mark Lutz is working on
one too -- more details as they emerge.
A. Yes, see <URL:http://www.cwi.nl/~guido/Python.html> (Python's home
page). It contains pointers to hypertext versions of the whole
documentation set (as hypertext, not just PostScript).
1.9. Q. Are there any published articles about Python that I can quote?
If you wish to browse this collection of HTML files on your own
machine, it is available bundled up by anonymous ftp,
e.g. <URL:ftp://ftp.cwi.nl/pub/python/python-html.tar.gz>. (This
requires some manual patch-up for the references to images,
unfortunately.)
An Emacs-INFO set containing the library manual is also available by
ftp, e.g. <URL:ftp://ftp.cwi.nl/pub/python/python-lin-info.tar.gz>.
1.9. Q. Is there a book on Python, or will there be one out soon?
A. I am writing one. Publishers are interested. Optimistically, it
will be ready for the press by mid-1995. Mark Lutz is working on one
too -- more details as they emerge.
1.10. Q. Are there any published articles about Python that I can quote?
A. So far the only refereed and published article that describes
Python in some detail is:
@ -332,7 +356,7 @@ Python in some detail is:
LaTeX source for this paper is available as part of the Python source
distribution.
1.10. Q. Are there short introductory papers or talks on Python?
1.11. Q. Are there short introductory papers or talks on Python?
A. A recent high-level description of Python is:
@ -349,7 +373,7 @@ Slides for a talk on Python that I gave at the Usenix Symposium on
Very High Level Languages in Santa Fe, NM, USA in October 1995 are
available as <URL:ftp://ftp.cwi.nl/pub/python/vhll-slides.ps>.
1.11. Q. How does the Python version numbering scheme work?
1.12. Q. How does the Python version numbering scheme work?
A. Python versions are numbered A.B.C. A is the major version number
-- it is only incremented for major changes in functionality or source
@ -359,7 +383,18 @@ incremented for each new release. Note that in the past, patches have
added significant changes; in fact the changeover from 0.9.9 to 1.0.0
was the first time that either A or B changed!
1.12. Q. Are there other ftp sites that carry Python related material?
Beta versions have an additional suffix of "-beta-N" for some small
number N. Note that (for instance) all versions labeled 1.2-beta-N
*precede* the actual release of 1.2.
1.13. Q. How do I get a beta test version of Python?
A. Write me. I might like you :-) Seriously, anybody who has
previously used and installed Python can become a beta tester, but I
expect feedback, so you have to write me first before I divulge the
secret location of the latest beta release.
1.14. Q. Are there other ftp sites that carry Python related material?
A. An interesting ftp site for Python users is ftp.markv.com; the
directory pub/python contains a growing collection of interesting
@ -370,7 +405,7 @@ extension .readme) in the publicly writable directory
<lance@markv.com>. (I've heard complaints about this service not
being very responsive -- try at your own risk.)
1.13. Q. Are there copyright restrictions on the use of Python?
1.15. Q. Are there copyright restrictions on the use of Python?
A. Hardly. You can do anything you want with the source, as long as
you leave the copyrights in, and display those copyrights in any
@ -456,10 +491,10 @@ in the early stages of development, in fact new, stable releases
2.5. Q. When will the next version be released?
A. I am planning to release 1.2 in January 1995. It will contain
hooks into the implementation of the import command, a (still limited)
form of persistent objects, and the usual complement of bug fixes
(including many fixed memory leaks and thread problems).
A. I am planning to release 1.2 in February or early March 1995. It
will contain hooks into the implementation of the import command, a
(still limited) form of persistent objects, and the usual complement
of bug fixes (including many fixed memory leaks and thread problems).
2.6. Q. What new developments are expected for Python in the future?
@ -582,14 +617,12 @@ toplevel).
3.8. Q. Python built with gcc for the DEC Alpha doesn't work.
People have reported problems with gcc 2.5.8 up to 2.6.2. The
DEC OSF/1 cc compiler does not have these problems so it's probably
gcc's fault. The latest news is that the problem still exists but
only when you use -O and only in the Modules subdirectory. So one
solution is to compile everything except Modules with gcc -O and then
do the Modules directory with gcc without -O. If you find a version
of gcc which doesn't have this bug or if you can reduce it further to
a particular file, please let me know.
People have reported problems with gcc 2.5.8 up to 2.6.3. The DEC
OSF/1 cc compiler does not have these problems so it's likely a gcc
bug. The latest news is that (at least in the 1.2 beta release) the
problem still exists but only when you use -O, and only affects the
code generated from Python/marshal.c. A fix is to change "long i, n;"
into "int i, n;" in w_object().
3.9. Q. I use VPATH but some targets are built in the source directory.
@ -642,23 +675,30 @@ here but I've been told that it is the place for readline bugs.)
3.11. Q. Trouble building Python on Linux.
A. (Adapted from Bennet Todd:)
A. In 1.1 and 1.1.1, there's a bug in the reference counting logic of
ternary pow() which is only tripped by very picky mallocs, like the
GNU malloc on Linux. This has been fixed in 1.2. To continue the
tests, just disable the tests of pow() with three arguments from
Lib/test/test_b2.py.
It seems to work for some people but not for others.
Apart from this, Python builds and runs fine on most Linux versions.
Bennet Todd has this to say on the subject:
This might depend on which Linux release you're using. Older Linux
releases had (understandably) fewer gracious hack to improve Unix
compatibility; really old Linux was Posix 1003.1 compatible, without
nearly as much Unix compatibility as one might have wished. Current
releases of Linux build most current free software, either BSD or
System V, with little or no trouble.
It seems to work for some people but not for others.
Besides that, there are quite a few different releases currently,
including MCC, Slackware, SLS, and Debian, and probably more. The
differences between their compilation environments are far smaller
than they used to be, but they're still updated with different
frequencies. It's likely that the current Slackware works fine, as it
currently seems to be the most popular. But that's just a guess.
This might depend on which Linux release you're using. Older Linux
releases had (understandably) fewer gracious hack to improve Unix
compatibility; really old Linux was Posix 1003.1 compatible, without
nearly as much Unix compatibility as one might have wished. Current
releases of Linux build most current free software, either BSD or
System V, with little or no trouble.
Besides that, there are quite a few different releases currently,
including MCC, Slackware, SLS, and Debian, and probably more. The
differences between their compilation environments are far smaller
than they used to be, but they're still updated with different
frequencies. It's likely that the current Slackware works fine, as
it currently seems to be the most popular. But that's just a guess.
3.12. Q. Trouble with prototypes on Ultrix.
@ -693,11 +733,17 @@ A. (Thanks to Andrew Kuchling):
Linux requires that you use the GNU DLD library. The stages of using
dynamic libraries on Linux are:
1) Get dld from [some -- see below] Linux site. I believe the version
number is 3.2.4. Be careful here; the most recent GNU version is
3.2.3, and doesn't support Linux; be sure to get it from a Linux
mirror, not a GNU mirror. Compile it and install the library libdld.a
somewhere; I used /usr/local/lib.
1) Get dld 3.2.5 from a Linux site. Be careful here; the most recent
GNU version is 3.2.3, and doesn't support Linux; be sure to get it
from a Linux mirror, not a GNU mirror (3.2.4 should also work).
Compile it and install the library libdld.a somewhere; I used
/usr/local/lib.
Suitable URLs for the dld distribution are currently:
<URL:ftp://sunsite.unc.edu/pub/Linux/libs/dld-3.2.5.src.tar.gz> and
<URL:ftp://tsx-11.mit.edu/pub/linux/sources/libs/dld-3.2.5.src.tar.gz>.
There's also a binary distribution of it:
<URL:ftp://sunsite.unc.edu/pub/Linux/libs/dld-3.2.5.bin.tar.gz>.
2) Get Jack Jansen's DL library; its location is given in the
_Extending Python_ manual as ftp://ftp.cwi.nl/pub/dynload/. Compile
@ -709,27 +755,10 @@ libraries.
4) Recompile Python.
If you run into trouble with this, send me some mail and we can work
on the problem.
I don't use ELF binaries, because I'd rather wait until everything is
reliable; my current impression (and please correct me if I'm wrong)
is that gcc-elf is still a bit wonky, and you have to compile the
entire GNU library yourself. I'd much rather wait until ELF is a more
standard part of Linux distributions. I suspect that once ELF is
common, Python's configure script will pick up the dlfcn.h header file
and dynamic linking will work automatically. Time will tell,
however...
It turns out that Linux DLD is not on sunsite.unc.edu; instead it's
located at:
<URL:ftp://tsx-11.mit.edu/pub/linux/sources/libs/dld-3.2.4.src.tar.gz>
tsx-11 has mirrors; off the top of my head, one is ftp.uu.net, where
the URL would be:
<URL:ftp://ftp.uu.net/systems/unix/linux/sources/libs/dld-3.2.4.src.tar.gz>
Note that once ELF is common in the Linux world, it will be much
easier (probably within a year) -- the standard SVR4-style dlopen()
interface is then available. This has already proved to work
perfectly using a beta version of the ELF-capable GCC for Linux.
4. Programming in Python
@ -1013,6 +1042,19 @@ Athena widget sets. Last I heard about it it was included in the WAFE
1.0 prerelease
<URL:ftp://ftp.wu-wien.ac.at/pub/src/X11/wafe/wafe-1.0.tar.gz-prerelease>.
- There's an interface to wxWindows. wxWindows is a portable GUI
class library written in C++. It supports XView, Motif, MS-Windows as
targets. There is some support for Macs and CURSES as well. wxWindows
preserves the look and feel of the underlying graphics toolkit. See
the wxPython WWW page at
<URL:http://www.aiai.ed.ac.uk/~jacs/wx/wxpython/wxpython.html>.
- Python has been mentioned on the "Futurism" subpage of the Fresco
home page <URL:http://www.faslab.com/fresco/HomePage.html>. "Pesto"
is a Python interface to the CORBA dynamic invocation interface, and
thus Fresco. A Pesto prototype is running and is currently being
packaged up for inclusion in the Fresco snapshot.
4.14. Q. Are there any interfaces to database packages in Python?
A. There's an interface to SYBASE by John Redford
@ -1442,14 +1484,16 @@ list, to call a function without arguments, pass "()" for the format,
and to call a function with one argument, surround the argument in
parentheses, e.g. "(i)".
(This function and a companion will be available in 1.2 under the
names PyEval_CallFunction and PyEval_CallMethod.)
5.9. Q. How do I catch the output from print_error()?
A. (Due to Mark Hammond):
* in Python code, define an object that supports the "write()" method.
FWIW, there seems to be a small problem that requires the 'softspace'
attribute to be defined too (I can't remember exact details of the
problem).
attribute to be defined too (fixed in 1.2).
* redirect sys.stdout and sys.stderr to this object.
@ -1502,6 +1546,8 @@ generic copying operation.
A partial solution will appear in release 1.2. This will also provide
a partial solution to the problem of a generic copying operation.
(Partial because it still won't cope with open files etc.; however it
does handle user-defined classes!)
6.3. Q. Why isn't there a switch or case statement in Python?

View File

@ -5,44 +5,23 @@
;; Author: 1995 Barry A. Warsaw <bwarsaw@cnri.reston.va.us>
;; 1992-1994 Tim Peters <tim@ksr.com>
;; Maintainer: bwarsaw@cnri.reston.va.us
;; Created: ???
;; Version: 2.6
;; Last Modified: 1995/03/09 16:07:29
;; Created: Feb 1992
;; Version: 2.7
;; Last Modified: 1995/03/10 15:58:16
;; Keywords: python editing language major-mode
;; This file is not part of GNU Emacs.
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2 of the License, or
;; (at your option) any later version.
;;
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
;; This software is provided as-is, without express or implied
;; warranty. Permission to use, copy, modify, distribute or sell this
;; software, without fee, for any purpose and by any individual or
;; organization, is hereby granted, provided that the above copyright
;; notice and this paragraph appear in all copies.
;;; Commentary:
;;
;; This is a major mode for editing Python programs. It was developed
;; by Tim Peters <tim@ksr.com> after an original idea by Michael
;; A. Guravage. Tim doesn't appear to be on the 'net any longer so I
;; have undertaken maintenance of the mode. Here is Tim's original
;; copyright notice:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Copyright (c) 1992,1993,1994 Tim Peters
;;
;; This software is provided as-is, without express or implied warranty.
;; Permission to use, copy, modify, distribute or sell this software,
;; without fee, for any purpose and by any individual or organization, is
;; hereby granted, provided that the above copyright notice and this
;; paragraph appear in all copies.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; have undertaken maintenance of the mode.
;; At some point this mode will undergo a rewrite to bring it more in
;; line with GNU Emacs Lisp coding standards. But all in all, the
@ -72,7 +51,7 @@
;; LCD Archive Entry:
;; python-mode|Barry A. Warsaw|bwarsaw@cnri.reston.va.us
;; |Major mode for editing Python programs
;; |1995/03/09 16:07:29|2.6|
;; |1995/03/10 15:58:16|2.7|
;;; Code:
@ -1804,7 +1783,7 @@ local bindings to py-newline-and-indent."))
(setq zmacs-region-stays t)))
(defconst py-version "2.6"
(defconst py-version "2.7"
"`python-mode' version number.")
(defconst py-help-address "bwarsaw@cnri.reston.va.us"
"Address accepting submission of bug reports.")