Getting started with tcl

Bruce Stephens
Thu Aug 3 09:40:00 GMT 2000

Thomas Heller <> writes:

> I'm trying to understand how SN starts 'make'.
> Since I'm an absolute beginner to tcl, can
> someone please explain the following line
> (from share/gui/multimake.tcl, method ExecMake):
>   set ret [catch {@@set make_fd [@@open "| $make_cmd" r]} msg]
> I can decipher most of it, but what do all the @'s mean?
> Is this standard tcl? I did not find something like
> this in the Ousterhout book...

Normally it would mean nothing: @@set would simply refer to a command
called "@@set".  However, the ChangeLog in itcl suggests that things
have been changed so that @@ means the same as ::.  

So try thinking of it in those terms.  Ousterhout's book is
unfortunately too old to cover namespaces; however, the namespace(n)
manpage describes it.  Anyway, namespaces work sufficiently obviously
that they shouldn't be surprising.

I don't know why they'd have changed things in this way.

Bruce Stephens
MessagingDirect(UK) Ltd		<URL: >

More information about the Sourcenav mailing list