or
Sign in to turn on 1-Click ordering
More Buying Choices
Have one to sell? Sell yours here
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 

Tcl and the Tk Toolkit [Paperback]

John K. Ousterhout
4.4 out of 5 stars  See all reviews (11 customer reviews)

List Price: $54.99
Price: $49.79 & FREE Shipping. Details
You Save: $5.20 (9%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 1 left in stock (more on the way).
Ships from and sold by Amazon.com. Gift-wrap available.
Want it Tuesday, May 21? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student

Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now
There is a newer edition of this item:
Tcl and the Tk Toolkit (2nd Edition) Tcl and the Tk Toolkit (2nd Edition) 3.8 out of 5 stars (9)
$39.21
In Stock.

Book Description

April 10, 1994 020163337X 978-0201633375 1
Since Tcl and the Tk Toolkit is written by the creator of the Tcl scripting language and the Tk toolkit, this book is the single authoritative resource for anyone who wants to produce far more powerful X Window System applications in a fraction of the time that would otherwise be required. Tcl and the Tk Toolkit offers an introduction and overview of this impressive programming environment, including detailed instructions for script writing in Tcl and working with the Tk toolkit. The book also describes the C interfaces for Tcl and Tk for those readers who wish to extend their built-in features by writing new C commands.

Frequently Bought Together

Tcl and the Tk Toolkit + Practical Programming in Tcl and Tk (4th Edition) + TCL / TK  in a Nutshell: A Desktop Quick Reference (In a Nutshell (O'Reilly))
Price for all three: $131.96

Buy the selected items together


Editorial Reviews

Amazon.com Review

Ousterhout's Tcl and the Tk Toolkit was one of the first books on Tcl (tool command language) and Tk (toolkit) and has become one of the classics in the field. Written by the developer of Tcl and Tk, the text takes a no-nonsense approach to the language, describing the elements of Tcl and Tk in programming-reference-style detail. If you are already familiar with a C-like language and want a just-the-facts introduction to Tcl and Tk, this is the book for you. The manual is divided into four sections: a description of the Tcl language, an introduction to Tk, a discussion of the Tcl/C interface, and information about the Tk/C interface. Although there are no fully worked out programs, code snippets illustrate how to use control structures and data types. Written in 1994, the book is based on Tcl 7.3 and Tk 3.6 and does not cover the most recent versions of Tcl and Tk.

From the Inside Flap

Tcl was born of frustration. In the early 1980s my students and I developed a number of interactive tools at the University of California at Berkeley, mostly for integrated circuit design, and we found ourselves spending a lot of time building bad command languages. Each tool needed to have a command language of some sort, but our main interest was in the tool rather than its command language. We spent as little time as possible on the command language and always ended up with a language that was weak and quirky. Furthermore, the command language for one tool was never quite right for the next tool, so we ended up building a new bad command language for each tool. This became increasingly frustrating.

In the fall of 1987 it occurred to me that the solution was to build a reusable command language. If a general-purpose scripting language could be built as a C library package, then perhaps it could be reused for many different purposes in many different applications. Of course, the language would need to be extensible so that each application could add its own specific features to the core provided by the library. In the spring of 1988 I decided to implement such a language, and the result was Tcl.

Tk was also born of frustration. The basic idea for Tk arose in response to Apple's announcement of HyperCard in the fall of 1987. HyperCard generated tremendous excitement because of the power of the system and the way in which it allowed many different interactive elements to be scripted and work together. However, I was discouraged. The HyperCard system had obviously taken a large development effort, and it seemed unlikely to me that a small group such as a university research project could ever mount such a massive effort. This suggested that we would not be able to participate in the development of new forms of interactive software in the future.

I concluded that the only hope for us was a component approach. Rather than building a new application as a self-contained monolith with hundreds of thousands of lines of code, we needed to find a way to divide applications into many smaller reusable components. Ideally each component would be small enough to be implemented by a small group, and interesting applications could be created by assembling components. In this environment it should be possible to create an exciting new application by developing one new component and then combining it with existing components.

The component-based approach requires a powerful and flexible "glue"for assembling the components, and it occurred to me that perhaps a shared scripting language could provide that glue. Out of this thinking grew Tk, an X11 toolkit based on Tcl. Tk allows components to be either individual user-interface controls or entire applications; in either case components can be developed independently and Tcl can be used to assemble the components and communicate between them.

I started writing Tcl and Tk as a hobby in my spare time. As other people began to use the systems I found myself spending more and more time on them, to the point where today they occupy almost all of my waking hours and many of my sleeping ones.

Tcl and Tk have succeeded beyond my wildest dreams. The Tcl/Tk developer community now numbers in the tens of thousands and there are thousands of Tcl applications in existence or under development. The application areas for Tcl and Tk cover virtually the entire spectrum of graphical and engineering applications, including computer-aided design, software development, testing, instrument control, scientific visualization, and multimedia. Tcl is used by itself in many applications, and Tcl and Tk are used together in many others. Tcl and Tk are being used by hundreds of companies, large and small, as well as universities and research laboratories.

One benefit that came as a surprise to me is that it is possible to create interesting graphical user interfaces (GUIs) entirely as Tcl scripts. I had always assumed that every Tcl application would contain some new C code that implements new Tcl commands, plus some Tcl scripts that combine the new commands with the built-in facilities provided by Tcl. However, once a simple Tcl/Tk application called wish became available, many people began creating user interfaces by writing Tcl scripts for it, without writing any C code at all! It turned out that the Tcl and Tk commands provide a high-level interface to GUI programming that hides many of the details faced by a C programmer. As a result, it is much easier to learn how to use wish than a C-based toolkit, and user interfaces can be written with much less code. Most Tcl/Tk users never write any C code at all and most of the Tcl/Tk applications consist solely of Tcl scripts.

This book is intended as an introduction to Tcl and Tk for programmers who plan to write or modify Tcl/Tk applications. I assume that readers have programmed in C and have at least passing familiarity with a shell such as sh or csh or ksh. I also assume that readers have used the X Window System and are familiar with basic ideas such as using the mouse, resizing windows, etc. No prior experience with Tcl or Tk is needed in order to read this book, and you need not have written X applications using other toolkits such as Motif.

The book is organized so that you can learn Tcl without learning Tk if you wish. Also, the discussion of how to write Tcl scripts is separate from the discussion of how to use the C library interfaces provided by Tcl and Tk. The first two parts of the book describe Tcl and Tk at the level of writing scripts, and the last two parts describe the C interfaces for Tcl and Tk; if you are like the majority of Tcl/Tk users who only write scripts, you can stop after reading the first two parts.

In spite of my best efforts, I'm sure that there are errors in this edition of the book. I'm interested in hearing about any problems that you encounter, whether they are typos, formatting errors, sections or ideas that are hard to understand, or bugs in the examples. I'll attempt to correct the problems in future printings of the book. The best way to report problems is with electronic mail sent to tclbookbugs@cs.berkeley.

Many people have helped in the creation of this book. First and foremost I would like to thank Brian Kernighan, who reviewed several drafts of the manuscript with almost terrifying thoroughness and uncovered numerous problems both large and small. I am also grateful for the detailed comments provided by the other Addison-Wesley technical reviewers: Richard Blevins, Gerard Holzmann, Curt Horkey, Ron Hutchins, Stephen Johnson, Oliver Jones, David Korn, Bill Leggett, Don Libes, Kent Margraf, Stuart McRobert, David Richardson, Alexei Rodrigues, Gerald Rosenberg, John Slater, and Win Treese. Thanks also to Bob Sproull, who read the next-to-last draft from cover to cover and provided countless bug fixes and suggestions.

I made early drafts of the manuscript available to the Tcl/Tk community via the Internet and received countless comments and suggestions from all over the world in return. I'm afraid that I didn't keep careful enough records to acknowledge all the people who contributed in this way, but the list of contributors includes at least the following people: Marvin Aguero, Miriam Amos Nihart, Jim Anderson, Frederik Anheuser, Jeff Blaine, John Boller, David Boyce, Terry Brannon, Richard Campbell, J. Cazander, Wen Chen, Richard Cheung, Peter Chubb, De Clarke, Peter Collinson, Peter Costantinidis, Alistair Crooks, Peter Davies, Tal Dayan, Akim Demaille, Mark Diekhans, Matthew Dillon, Tuan Doan, Tony Duarte, Paul DuBois, Anton Eliens, Marc R. Ewing, Luis Fernandes, Martin Forssen, Ben Fried, Matteo Frigo, Andrej Gabara, Steve Gaede, Sanjay Ghemawat, Bob Gibson, Michael Halle, Jun Hamano, Stephen Hansen, Brian Harrison, Marti Hearst, Fergus Henderson, Kevin Hendrix, David Herron, Patrick Hertel, Carsten Heyl, Leszek Holenderski, Jamie Honan, Rob W.W. Hooft, Nick Hounsome, Christopher Hylands, Jonathan Jowett, Poul-Henning Kamp, Karen L. Karavanic, Sunil Khatri, Vivek Khera, Jon Knight, Roger Knopf, Ramkumar Krishnan, Dave Kristol, Peter LaBelle, Tor-Erik Larsen, Tom Legrady, Will E. Leland, Kim Lester, Joshua Levy, Don Libes, Oscar Linares, David C.P. Linden, Toumas J. Lukka, Steve Lord, Steve Lumetta, Earlin Lutz, David J. Mackenzie, B.G. Mahesh, John Maline, Graham Mark, Stuart McRobert, George Moon, Michael Morris, Russell Nelson, Dale K. Newby, Richard Newton, Peter Nguyen, David Nichols, Marty Olevitch, Rita Ousterhout, John Pierce, Stephen Pietrowicz, Anna Pluzhnikov, Nico Poppelier, M.V.S. Ramanath, Cary D. Renzema, Mark Roseman, Samir Tiongson Saxena, Jay Schmidgall, Dan M. Serachitopol, Hume Smith, Frank Stajano, Larry Streepy, John E. Stump, Michael Sullivan, Holger Teutsch, Bennett E. Todd, Glenn Trewitt, D.A. Vaughan-Pope, Richard Vieregge, Larry W. Virden, David Waitzman, Matt Wartell, Glenn Waters, Wally Wedel, Juergen Weigert, Mark Weiser, Brent Welch, Alex Woo, Su-Lin Wu, Kawata Yasuro, Chut Ngeow Yee, Richard Yen, Stephen Ching-SingYen, and Mike Young.

Many many people have made significant contributi


Product Details

  • Paperback: 480 pages
  • Publisher: Addison-Wesley Professional; 1 edition (April 10, 1994)
  • Language: English
  • ISBN-10: 020163337X
  • ISBN-13: 978-0201633375
  • Product Dimensions: 9 x 7.4 x 1.3 inches
  • Shipping Weight: 1.8 pounds (View shipping rates and policies)
  • Average Customer Review: 4.4 out of 5 stars  See all reviews (11 customer reviews)
  • Amazon Best Sellers Rank: #762,589 in Books (See Top 100 in Books)

Customer Reviews

4.4 out of 5 stars
(11)
4.4 out of 5 stars
Share your thoughts with other customers
Most Helpful Customer Reviews
36 of 38 people found the following review helpful
5.0 out of 5 stars The best way to learn Tcl/Tk, and a great reference December 29, 1999
Format:Paperback
Although more detailed books like Welch's 'Practical Programming in Tcl and Tk' are very useful, Ousterhout's original book is still the best way to learn the language. His style is clear and concise, and he covers the core of the language with good examples and thorough explanatory text.

The layout is clean and easy to read, without any space wasted on fancy graphics or eye-candy. Instead, you get clear tables laying out what happens, or listing the commands in a certain functionality area. For example, page 122 has a table I've gone back to many times that lists the different return values from catch.

Even though I have and use other Tcl books, when I just want to check a point of syntax or verify functionality, this is the one I go to. It's an invaluable book for a Tcl/Tk developer.

Comment | 
Was this review helpful to you?
31 of 33 people found the following review helpful
5.0 out of 5 stars Excllent introduction to Tcl/Tk November 27, 1999
Format:Paperback
This is the best tutorial on Tcl/Tk. It is wonderfully clear and well organized.

The book deals with earlier versions of Tcl and Tk but I've yet to run across an example that doesn't work. (I'm sure there are some.)

This book helped me greatly when I decided to learn Tcl/Tk, and it is a pleasure to read.

The author is the creator of Tcl/Tk and a superb educator as well.

The book has a UNIX orientation though I tried on the software on my Windows 98 machine and found that his examples work. He uses the X-windows system as a basis but his explanation of X is so simple and clear I did not find my ignorance of it a problem. Also the Tk I'm using (8.2) on Windows 98 works great with his examples.

Comment | 
Was this review helpful to you?
14 of 15 people found the following review helpful
5.0 out of 5 stars This is Just a Great Book February 17, 2007
Format:Paperback
I've read other books written by the authors of the language, and found them to be lacking. But this author's book is really well organized, thoughtful, clear, and has great explanations. I was up and running creating widgets, etc. in a matter of no time.

I think this book is more of an instructional guide (and a damn good one too), but I don't believe it is oriented as a reference guide. I know that there were a few gripes on this should be both, but I wouldn't want that. Technology changes, so I prefer references to remain online. Gone are the days to cart a wheel-barrel of reference material for a given project, only to be obsoleted in a few years.

This book opened the doors to the great wonderful world of Tcl/Tk. And I am confident it will help others in years to come.
Comment | 
Was this review helpful to you?
Most Recent Customer Reviews
5.0 out of 5 stars Excellent book - still the best
This is a very good book to learn tcl/tk. It is a little dated, but the language is covered very well. Start with this one.
Published on January 17, 2002 by William Sturm
4.0 out of 5 stars Great starter!
I read this book in a matter of days. It flies by quite fast. It lacks examples but I thought it gave me enough information to be able to figure out the other things. Read more
Published on January 25, 2001 by Sultan Mehrabi
2.0 out of 5 stars Contains very little information
This book is very disappointing to use. One one hand, it is well written, and very clear to understand. Read more
Published on April 14, 2000 by Dr. Zoidberg
2.0 out of 5 stars A good start but nothing more...
Currently being a Computer Science major and enrolled in a GUI programming class teaching Tcl/Tk, I had to use the "Tcl and the TK Toolkit" as a textbook. Read more
Published on June 23, 1998
5.0 out of 5 stars The bible as far as I am concerned
An excellent book. Easy to read, good practicle examples, clear concise discussion of each subject. Quite simply the best book on Tcl/Tk around even if it doesn't cover all the... Read more
Published on June 23, 1998 by Steve Roche (stephen.roche@stest.ch)
5.0 out of 5 stars R&D Manager for an Internet Development Firm
I purchased this book in 1994 and it is still one of the most used books in my office. I'm probably going to get a second copy. Read more
Published on March 31, 1998 by rfinn@hiwd.net
5.0 out of 5 stars Tcl and Tk starting kit
It is an excellent start to learn tcl and tk. I purchase other books, but they are more advanced than I would like to start with. Many of my co-workers recommand this book to me.
Published on December 2, 1997
5.0 out of 5 stars An excellent source for those wishing to use and extend Tcl
John's book provides a thorough explanation of both the use and the extension of Tcl/Tk. It has been instrumental in the use of Tcl in projects ranging from embedded systems to... Read more
Published on September 26, 1997 by affriedl@earthlink.net
Search Customer Reviews
Only search this product's reviews


Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Forums

There are no discussions about this product yet.
Be the first to discuss this product with the community.
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Listmania!


Create a Listmania! list

So You'd Like to...


Create a guide


Look for Similar Items by Category