[Python-checkins] commit of r41661 - python/trunk/Doc/tut/tut.tex

andrew.kuchling python-checkins at python.org
Tue Dec 13 16:49:40 CET 2005


Author: andrew.kuchling
Date: Tue Dec 13 16:49:37 2005
New Revision: 41661

Modified:
   python/trunk/Doc/tut/tut.tex
Log:
>From a suggestion on c.l.py: modernize the introduction to the tutorial.
  * Remove talk of shell scripting, replacing it by some more current examples
  * Mention C++ and Java as well as C

Raymond H., please feel free to rewrite or revert as you see fit.
If the changes are OK, they could be backported to the 2.4-maint branch.


Modified: python/trunk/Doc/tut/tut.tex
==============================================================================
--- python/trunk/Doc/tut/tut.tex	(original)
+++ python/trunk/Doc/tut/tut.tex	Tue Dec 13 16:49:37 2005
@@ -72,35 +72,42 @@
 
 \chapter{Whetting Your Appetite \label{intro}}
 
-If you ever wrote a large shell script, you probably know this
-feeling: you'd love to add yet another feature, but it's already so
-slow, and so big, and so complicated; or the feature involves a system
-call or other function that is only accessible from C\ldots\ Usually
-the problem at hand isn't serious enough to warrant rewriting the
-script in C; perhaps the problem requires variable-length strings or
-other data types (like sorted lists of file names) that are easy in
-the shell but lots of work to implement in C, or perhaps you're not
-sufficiently familiar with C.
-
-Another situation: perhaps you have to work with several C libraries,
-and the usual C write/compile/test/re-compile cycle is too slow.  You
-need to develop software more quickly.  Possibly you've
-written a program that could use an extension language, and you don't
-want to design a language, write and debug an interpreter for it, then
-tie it into your application.
-
-In such cases, Python may be just the language for you.  Python is
-simple to use, but it is a real programming language, offering much
-more structure and support for large programs than the shell has.  On
-the other hand, it also offers much more error checking than C, and,
-being a \emph{very-high-level language}, it has high-level data types
-built in, such as flexible arrays and dictionaries that would cost you
-days to implement efficiently in C.  Because of its more general data
-types Python is applicable to a much larger problem domain than
-\emph{Awk} or even \emph{Perl}, yet many things are at least as easy
-in Python as in those languages.
+If you do much work on computers, eventually you find that there's
+some task you'd like to automate.  For example, you may wish to
+perform a search-and-replace over a large number of text files, or
+rename and rearrange a bunch of photo files in a complicated way.
+Perhaps you'd like to write a small custom database, or a specialized
+GUI application, or a simple game.
+
+If you're a professional software developer, you may have to work with
+several C/\Cpp/Java libraries but find the usual
+write/compile/test/re-compile cycle is too slow.  Perhaps you're
+writing a test suite for such a library and find writing the testing
+code a tedious task.  Or maybe you've written a program that could use
+an extension language, and you don't want to design and implement a
+whole new language for your application.
+
+Python is just the language for you.
+
+You could write a {\UNIX} shell script or Windows batch files for some
+of these tasks, but shell scripts are best at moving around files and
+changing text data, not well-suited for GUI applications or games.
+You could write a C/{\Cpp}/Java program, but it can take a lot of
+development time to get even a first-draft program.  Python is simpler
+to use, available on Windows, MacOS X, and {\UNIX} operating systems,
+and will help you get the job done more quickly.
+
+Python is simple to use, but it is a real programming language,
+offering much more structure and support for large programs than shell
+scripts or batch files can offer.  On the other hand, Python also
+offers much more error checking than C, and, being a
+\emph{very-high-level language}, it has high-level data types built
+in, such as flexible arrays and dictionaries.  Because of its more
+general data types Python is applicable to a much larger problem
+domain than Awk or even Perl, yet many things are at
+least as easy in Python as in those languages.
 
-Python allows you to split your program in modules that can be
+Python allows you to split your program into modules that can be
 reused in other Python programs.  It comes with a large collection of
 standard modules that you can use as the basis of your programs --- or
 as examples to start learning to program in Python.  Some of these
@@ -115,8 +122,8 @@
 It is also a handy desk calculator.
 
 Python enables programs to be written compactly and readably.  Programs
-written in Python are typically much shorter than equivalent C or
-\Cpp{} programs, for several reasons:
+written in Python are typically much shorter than equivalent C, 
+\Cpp{}, or Java programs, for several reasons:
 \begin{itemize}
 \item
 the high-level data types allow you to express complex operations in a
@@ -145,7 +152,8 @@
 
 Now that you are all excited about Python, you'll want to examine it
 in some more detail.  Since the best way to learn a language is
-to use it, you are invited to do so with this tutorial.
+to use it, the tutorial invites you to play with the Python interpreter
+as you read.
 
 In the next chapter, the mechanics of using the interpreter are
 explained.  This is rather mundane information, but essential for


More information about the Python-checkins mailing list