Vous voulez voir cette page en français ? Cliquez ici.


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.

Tcl and the Tk Toolkit [Paperback]

John K. Ousterhout
4.3 out of 5 stars  See all reviews (11 customer reviews)
List Price: CDN$ 57.99
Price: CDN$ 47.47 & this item ships for FREE with Super Saver Shipping. Details
You Save: CDN$ 10.52 (18%)
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
Temporarily out of stock.
Order now and we'll deliver when available. We'll e-mail you with an estimated delivery date as soon as we have more information. Your account will only be charged when we ship the item.
Ships from and sold by Amazon.ca. Gift-wrap available.
There is a newer edition of this item:
Tcl and the Tk Toolkit (2nd Edition) Tcl and the Tk Toolkit (2nd Edition)
CDN$ 39.68
Usually ships in 10 to 12 days

Book Description

Mar 31 1994 020163337X 978-0201633375 1
This book introduces two systems, Tcl and Tk, that together provide a simple and yet powerful programming environment for developing and using windowing applications under the X Window System . Tcl and Tk make it possible for novices to create graphical applications in just a few hours, while providing experts with sophisticated features that go far beyond the capabilities of other toolkits. John Ousterhout, author of Tcl and Tk, wrote this book, the definitive guide to these systems, while at University of California at Berkeley.
With this book you will discover how Tk's windowing shell, wish, enables you to develop window-based applications with amazingly few lines of code. You will also find information on Tk's novel and powerful facility for linking applications. Many other features are also described, such as Tk's hypertext and hypergraphics widgets and Tcl's facilities for procedures, list management, and subprocess execution.
For interested readers, the book also describes the C interfaces for Tcl and Tk, showing how to extend their built-in features by writing new C commands. Current Tcl and Tk distributions are available via anonymous FTP from the Internet host ftp.cs.berkeley.edu/ucb/tcl

Customers Who Bought This Item Also Bought


Product Details


Product Description

From Amazon

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.edu.

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 contributions to the development of Tcl and Tk. Without all of their efforts there would have been nothing of interest to write about in this book. Although I cannot hope to acknowledge all the people who helped to make Tcl and Tk what they are today, I would like to thank the following people specially: Don Libes, for writing the first widely used Tcl application; Mark Diekhans and Karl Lehenbauer, for TclX; Alastair Fyfe, for supporting the early development of Tcl; Mary Ann May-Pumphrey, for developing the original Tcl test suite; George Howlett, Michael McLennan, and Sani Nassif, for the BLT extensions; Kevin Kenny, for showing that Tcl can be used to communicate with almost any imaginable program; Joel Bartlett, for many challenging conversations and for inspiring Tk's canvas widget with his ezd program; Larry Rowe, for developing Tcl-DP and for providing general advice and support; Sven Delmas, for developing the XF application builder based on Tk; and Andrew Payne, for the widget tour and for meritorious Tcl evangelism.

Several companies have provided financial support for the development of Tcl and Tk, including Digital Equipment Corporation, Hewlett-Packard Corporation, Sun Microsystems, and Computerized Processes Unlimited. I am particularly grateful to Digital's Western Research Laboratory and its director, Richard Swan, for providing me with a one-day-per-week hideaway where I could go to gather my thoughts and work on Tcl and Tk.

Terry Lessard-Smith and Bob Miller have provided fabulous administrative support for this and all my other projects. I don't know how I would get anything done without them.

Finally, I owe a special debt to my colleague and friend Dave Patterson, whose humor and sage advice have inspired and shaped much of my professional career, and to my wife Rita and daughters Kay and Amy, who have tolerated my workaholic tendencies with more cheer and affection than I deserve.

John Ousterhout
Berkeley, California
February, 1994



020163337XP04062001


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

Customer Reviews

4.3 out of 5 stars
4.3 out of 5 stars
Most helpful customer reviews
5.0 out of 5 stars Excellent book - still the best Jan 17 2002
Format:Paperback
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.
Was this review helpful to you?
4.0 out of 5 stars Great starter! Jan 25 2001
Format:Paperback
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. Besides by working out problems do you learn best and this book gives you the basics to do that. Explains well and doesn't go on and on and on. Good starter if you want to learn Tcl/Tk
Was this review helpful to you?
2.0 out of 5 stars Contains very little information April 14 2000
Format:Paperback
This book is very disappointing to use. One one hand, it is well written, and very clear to understand. But on the other hand, it contains *very* little information, almost everything I needed I had to find on the net, or search the man pages. It claims "not to be a reference". Then why buy it at all! I'd rather buy a book which teaches the material *and* contains all the information I need.
Was this review helpful to you?
Want to see more reviews on this item?
Most recent customer reviews
5.0 out of 5 stars The best way to learn Tcl/Tk, and a great reference
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. Read more
Published on Dec 29 1999 by Mike Christie
5.0 out of 5 stars Excllent introduction to Tcl/Tk
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... Read more

Published on Nov 27 1999 by booklover
4.0 out of 5 stars A bit confusing for Windows users
The book is very good, and I have started learning TCL with it. I wish it went more in depth into TCLETs and explained in more depth about compiling. Read more
Published on Jun 30 1999 by Paul Lawler
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 Jun 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 Jun 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 Mar 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 Dec 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 Sep 26 1997 by affriedl@earthlink.net
Search Customer Reviews
Only search this product's reviews

Listmania!

Create a Listmania! list

Look for similar items by category


Feedback


Amazon.ca Privacy Statement Amazon.ca Shipping Information Amazon.ca Returns & Exchanges