HDTenEightyP/NetNews huggingface dataset:
From: Nathaniel Borenstein <nsb@thumper.bellcore.com>
Subject: Re: Insecurity of tk
Organization: Bellcore
Date: Wed, 23 Dec 92 17:28:19 GMT

Excerpts from netnews.comp.lang.tcl: 23-Dec-92 Re: Insecurity of tk Sean
McLinden@andrew.cmu (1134)

> A, potentially, bigger security concern is that it seems pretty obvious
> that a slick MIME interface could be written to allow tcl/tk scripts to
> be used as interactive mail. The CMU Andrew project did just such a think
> with Atk and, later NESS. The difficulty lies in having an interpreter which
> can detect potential security problems before running the application or which
> could run the application in a secure mode so that you don't have people
> sending
> Trojan horses to each other.

Yes, this is why the MIME standard and the metamail documentation warn
you in very dire terms about defining your own too-powerful extensions
to MIME.  It can be a very dangerous thing.

One of my own research projects, in recent years, has focused on the
design of a programming language for mail-based applications that is
limited in such a way as to make it NOT be a security problem.  The
resulting language, called ATOMICMAIL, was described in a paper of mine
at last month's CSCW conference.  A plain text copy of that paper is
available, for anyone interested, via anonymous ftp from
thumper.bellcore.com in pub/nsb/CWCW-ATOMICMAIL.txt.

I have also thought, in recent months, that Tcl/TK might be a better
basis for a secure mail-based programming language than LISP, which is
the language model for ATOMICMAIL.  Basically, what we'd need would be a
sort of castrated version of the Tcl/TK interpreter, in which all
potentially dangerous actions were removed or replaced with less
dangerous variants.  If anyone else is interested in pursuing this idea,
I'd be delighted to collaborate...  -- Nathaniel


Newsgroups: comp.lang.tcl
From: lwv26@cas.org (Larry W. Virden)
Subject: Re: TCL3.0 installation lack
Followup-To: comp.lang.tcl
Reply-To: lvirden@cas.org (Larry W. Virden)
Organization: Nedriv Software and Shoe Shiners, Uninc.
Date: Tue, 22 Dec 1992 10:44:59 GMT

ACK!  No!  Use something like $(TCL_INCLUDE) and set it to null at the
beginning of the Makefile, then add that to the list of things to configure
before running the makefile.


-- 
Larry W. Virden                 UUCP: osu-cis!chemabs!lvirden
Same Mbox: BITNET: lvirden@cas  INET: lvirden@cas.org
Personal: 674 Falls Place,   Reynoldsburg, OH 43068-1614
From: hcs+@cs.cmu.edu (Henry C Schmitt)
Newsgroups: comp.lang.tcl
Subject: Dynamic menus in Tk
Summary: Is there a standard way?
Keywords: Tk Dynamic menus
Date: 22 Dec 92 20:21:35 GMT
Article-I.D.: cs.BzoGK1.Bwu.1
Organization: Engineering Design Research Center, Carnegie Mellon


	Is there a standard way of doing dynamic menus under Tk?  I'm
trying to put up a menu of Tcl interpreters, which may have changed
since the script started running.  Basically I'm trying to update the
menu when the menubutton is pressed.
-- 
Henry C. Schmitt
Home: 2863 Beechwood Blvd.,Pittsburgh, PA 15217-3114 (412) 421-8482
Work: 2212 Hamburg Hall,5000 Forbes Ave,Pittsburgh, PA 15213 (412) 268-2257
E-Mail: InterNet: hcs@cmu.edu CIS: 72275,1456 AppleLink, AOL, GEnie: H.Schmitt
Newsgroups: comp.lang.tcl
From: scs@iti.org (Steve Simmons)
Subject: Re: TCL3.0 installation lack
Organization: Industrial Technology Institute
Date: Tue, 22 Dec 1992 13:40:56 GMT

lwv26@cas.org (Larry W. Virden) writes:

>ACK!  No!  Use something like $(TCL_INCLUDE) and set it to null at the
>beginning of the Makefile, then add that to the list of things to configure
>before running the makefile.

Agreed, but we should still select a default value.
-- 
	"You can't get here from here."
Newsgroups: comp.lang.tcl
From: jbotz@mtholyoke.edu (Jurgen Botz)
Subject: Re: TCL3.0 installation lack
Organization: Mount Holyoke College
Date: Tue, 22 Dec 1992 18:38:27 GMT

In article <1992Dec22.104617.27892@cas.org> lvirden@cas.org (Larry W. Virden) writes:
>ACK!  No!  Use something like $(TCL_INCLUDE) and set it to null at the
>beginning of the Makefile, then add that to the list of things to configure
>before running the makefile.

/usr/local/include seems like a good default, however, espcially since the
GNU compiler will look there by default.
--
Jurgen Botz                  |   Internet: JBotz@mtholyoke.edu
Academic Systems Consultant  |     Bitnet: JBotz@mhc.bitnet
Mount Holyoke College        |      Voice: (US) 413-538-2375 (daytime)
South Hadley, MA, USA        | Snail Mail: J. Botz, 01075-0629
Newsgroups: comp.lang.tcl
From: tjj@thumper..bellcore.com (J Tim Jordan)
Subject: Re: Tk3.0 bug?
Reply-To: tjj@thumper.UUCP (J Tim Jordan)
Organization: Bellcore MRE
Date: Tue, 22 Dec 92 01:27:21 GMT

>Tk 3.0 appears to have broken the ability to start a window off
>withdrawn and later deiconify it.  Here is a patch to tkWm.c that
>should fix the problem.  Sorry about that...
>
>*** /tmp/,RCSt1084779	Mon Dec 21 11:36:13 1992
>--- tkWm.c	Mon Dec 21 11:30:53 1992
>***************
>*** 386,394 ****
>      XTextProperty textProp;
>      int savedX, savedY, savedFlags;
>  
>-     if (wmPtr->hints.initial_state == WithdrawnState) {
>- 	return;
>-     }
>      if (wmPtr->flags & WM_NEVER_MAPPED) {
>  	wmPtr->flags &= ~WM_NEVER_MAPPED;
>  
>--- 386,391 ----
>***************
>*** 433,438 ****
>--- 430,438 ----
>  	    }
>  	}
>      }
>+     if (wmPtr->hints.initial_state == WithdrawnState) {
>+ 	return;
>+     }
>      wmPtr->flags |= WM_ABOUT_TO_MAP;
                       ^^^^^^^^^^^^^^^
What is this? Can we just choose the next available bit 0x80 ?
If so I tried this and it doesn't work.

Tim
From: mchen@uranus.cs.psu.edu (Michael Chen)
Newsgroups: comp.lang.tcl
Subject: Re: Insecurity of tk
Date: 22 Dec 92 22:49:18 GMT


   I assume that somewhere in the send command is a link to the interp that
sent it.  Why not set up a regexp pattern to match the requesting interp's name
against, and to fail the send with some informative message if the regexp
doesn't match?  (Better, a list of regexps to try.)
   If it was initialized to *, that would match anything (default); that means
that a security enforcing interp could do a send which would set the security
(say accessible by "info security") to only match itself.  Then you could 
handle it / monitor it with another interpreter, which presumably wouldn't
take sends from anyone.

-- Mike
--
_____________________________________________________________________________
| Michael Chen			| From the depths of our most lucid horrors |
|				| spring our fond hopes and pure desires... |
| mchen@cs.psu.edu		| except what comes from HELL! :-) 7/23/92  |
\_______________________________\___________________________________________|
From: ouster@sprite.Berkeley.EDU (John Ousterhout)
Newsgroups: comp.lang.tcl
Subject: Bug fix for arrowheads and "coords" canvas widget command
Date: 21 Dec 1992 18:53:02 GMT
Organization: U.C. Berkeley Sprite Project
Distribution: world
NNTP-Posting-Host: tyranny.berkeley.edu


I believe that someone on this list reported a problem with arrowheads
on lines not moving properly after coordinate changes with the "coords"
widget command.  Here is a patch to tkCanvLine.c that should fix the
problem. Please let me know if problems persist.

*** /tmp/,RCSt1871260	Mon Dec 21 10:50:21 1992
--- tkCanvLine.c	Mon Dec 21 10:47:12 1992
***************
*** 42,48 ****
  				 * to the necks of the arrowheads rather than
  				 * their tips.  The actual endpoints are
  				 * stored in the *firstArrowPtr and
! 				 * *lastArrowPtr. */
      int width;			/* Width of line. */
      XColor *fg;			/* Foreground color for line. */
      Pixmap fillStipple;		/* Stipple bitmap for filling line. */
--- 42,48 ----
  				 * to the necks of the arrowheads rather than
  				 * their tips.  The actual endpoints are
  				 * stored in the *firstArrowPtr and
! 				 * *lastArrowPtr, if they exist. */
      int width;			/* Width of line. */
      XColor *fg;			/* Foreground color for line. */
      Pixmap fillStipple;		/* Stipple bitmap for filling line. */
***************
*** 367,372 ****
--- 367,389 ----
  		    != TCL_OK) {
  		return TCL_ERROR;
  	    }
+ 	}
+ 
+ 	/*
+ 	 * Update arrowheads by throwing away any existing arrow-head
+ 	 * information and calling ConfigureArrows to recompute it.
+ 	 */
+ 
+ 	if (linePtr->firstArrowPtr != NULL) {
+ 	    ckfree((char *) linePtr->firstArrowPtr);
+ 	    linePtr->firstArrowPtr = NULL;
+ 	}
+ 	if (linePtr->lastArrowPtr != NULL) {
+ 	    ckfree((char *) linePtr->lastArrowPtr);
+ 	    linePtr->lastArrowPtr = NULL;
+ 	}
+ 	if (linePtr->arrow != noneUid) {
+ 	    ConfigureArrows(canvasPtr, linePtr);
  	}
  	ComputeLineBbox(canvasPtr, linePtr);
      }

Newsgroups: comp.lang.tcl
From: galew_a@cactus.org (Andy Galewsky)
Subject: Where to find tcl_snmp
Keywords: tcl snmp
Organization: Capital Area Central Texas UNIX Society, Austin, Tx
Date: Tue, 22 Dec 1992 13:31:46 GMT

I have been trying to find tcl_snmp but am having no luck... 
Archie can't seem to locate it.

Could some kind soul point me in the right direction or even email me
a copy.

Thanks-in-Advance

Andy Galewsky
Clinical Resource Systems, Inc.
Austin, TX

512/452-7261

andy@crs.com
Newsgroups: comp.lang.tcl
From: v043332@gandalf.stortek.com (Keith Amann)
Subject: Re: TCL3.0 installation lack
Originator: v043332@gandalf.stortek.com
Organization: Storage Technology Corporation
Date: Tue, 29 Dec 1992 01:41:15 GMT


In article <BzoBs4.HLI@mtholyoke.edu>, jbotz@mtholyoke.edu (Jurgen Botz) writes:
|> 
|> /usr/local/include seems like a good default, however, espcially since the
|> GNU compiler will look there by default.
|>

Your suggestion for a default is admirable, however not everyone utilizes
the GNU compiler.  I would have to agree with Larry Virden, use $(TCL_INCLUDE)
and set it to NULL toward the beginning of the makefile.  This will allow
each site to place these files in locations which are well suited to them.
-- 
Keith Amann, StorageTek                | My views/opinions belong to me, the 
 <Insert some snappy comment here!>    | company isn't responsible for them.
-------------------------------------------------------------------------------
Internet: v043332@stortek.com  VoiceNet: (303)673-4038  FAX-Net: (303)673-2581
Newsgroups: comp.lang.tcl
From: johng@cimage.com (John Gourlay)
Subject: Re: Advice wanted on math functions for Tcl 7.0
Organization: Cimage Corp, Ann Arbor, MI
X-Newsreader: Tin 1.1 PL5
Date: Tue, 22 Dec 92 15:50:47 GMT

Extend the expr syntax to include sin and cos.  Don't make them
separate functions.  I think it would be confusing to have some math
functions (+, *, etc.) in expr and some outside of it.  I'm swayed by
the more natural syntax within expr and by the efficiency of the
implementation.

John Gourlay
Newsgroups: comp.lang.tcl
From: "David Herron" <david@twg.com>
Subject: Re: Advice wanted on math functions for Tcl 7.0
Sensitivity: Personal
Encoding:  30 TEXT , 4 TEXT 
Conversion: Prohibited
Organization: The Wollongong Group, Inc., Palo Alto, CA
Conversion-With-Loss: Prohibited
Date: Tue, 22 Dec 1992 23:19:43 GMT

I've already voted for embedding trig functions in expr.  But I just
had two thoughts which suggest third and fourth ways of doing this.
One is by using array's and the other by introducing a new class
of special things.

array

In this method the user writes: $sin(0.2).  A trap would be set up which
interprets the index as floating point, computes the function, and returns it.
Any programmer can write one of these arrays without having to extend expr.
Also, expr's parsing doesn't have to be extended at all.  Instead it happens
in Tcl_Eval().

Downside is you're back to converting back to strings which introduces
needless and useless overhead.  Just because TCL is not a numerical programming
language, it doesn't mean it has to PURPOSELY make numerical things slow.

function

In this case you'd introduce a new special leading character.  $'s introduce
array/scalar references.  This new character (`%'?) would introduce a
numerical function.  The user writes: %sin(0.2).  Some API function can
be in the library which lets C programmers create these functions.  Some
effort should be put into letting these stay in floating point if being
interpreted by expr, and converted to strings if interpreted by Tcl_Eval().
But my memory of the internals says this isn't likely.


One definite need is a way for C programmers to extend the set of functions.
Perhaps to include functions with multiple arguments?

<- David Herron <david@twg.com> (work) <david@davids.mmdf.com> (home)
<-
<- During the '80s Usenet's mantra was: "Not all the world's a VAX".
<- During the '90s I hope it becomes:   "Not all the world's DOS (ick)".
Newsgroups: comp.lang.tcl
From: lwv26@cas.org (Larry W. Virden)
Subject: Re: TCL3.0 installation lack
Followup-To: comp.lang.tcl
Reply-To: lvirden@cas.org (Larry W. Virden)
Organization: Nedriv Software and Shoe Shiners, Uninc.
Date: Tue, 29 Dec 1992 13:18:45 GMT

I agree - since we don't have a /usr/local/include - our 'local' stuff appears
in various project directories - we have to change it anyways.  And given the
amount of grief that gcc appears to be giving folk with tk30 right now, wouldn't
surprise me to see it less used with tk30 anyways.

-- 
Larry W. Virden                 UUCP: osu-cis!chemabs!lvirden
Same Mbox: BITNET: lvirden@cas  INET: lvirden@cas.org
Personal: 674 Falls Place,   Reynoldsburg, OH 43068-1614
Newsgroups: comp.lang.tcl
From: karl@NeoSoft.com (Karl Lehenbauer)
Subject: Re: dynamically changling label text
Organization: NeoSoft Communications Services -- (713) 684-5900
Date: Tue, 22 Dec 1992 17:18:34 GMT

In article <1992Dec21.214049.24275@choreo.ca> news@choreo.ca (Choreo NetNews Administration Account(Ottawa)) writes:
>Once the text in the label is changed, the size of the window is adjusted.
>Is there a mechanism which will allow me to explicitly set the width of the
>label?

The Tk and Tcl manual pages are excellent, and a useful resource.

The manual page for "label" very clearly describes a "-width" command
that sets the width in characters for textual labels or the width in
screen units if it's a bitmap.
-- 
-- Email info@NeoSoft.com for info on getting interactive Internet access.
"In a minute, I'll burp up your droid."
Newsgroups: comp.lang.tcl
From: brucet@extro.ucc.su.OZ.AU (Bruce Tulloch)
Subject: How do I return an array as a list ?
Keywords: array list procedure
Organization: Sydney University Computing Service, Sydney, NSW, Australia
Date: Mon, 4 Jan 1993 02:05:22 GMT

Tcl Programmers,

I'm new to tcl so maybe I've missed something, but is there an easier or 
more elegant way write a procedure which returns the contents of an array 
which exists in the context of the caller (or another explicit context) 
as a list of {index value} pairs than this ?

proc arrayToList {array {context 1}} {
    set names [uplevel $context array names $array]
    if {![llength $names]} {return}
    foreach name $names {
        set item [echo $name [uplevel $context echo $[uplevel $context echo $array]($name)]]
        lappend contents $item
    }
    return $contents
}

thank, bruce
-- 
          bruce tulloch sydney australia - brucet@extro.ucc.su.oz.au
***complex problems have straight forward, easy to understand wrong answers***
Newsgroups: comp.lang.tcl
From: phil@compnews.co.uk (Phil Male)
Newsgroups: comp.lang.tcl
Subject: Uk Teletext Service
Date: 1 Jan 93 21:57:17 GMT
Reply-To: phil@compnews.co.uk
Organization: Computer Newspaper Services, Howden, UK.
NNTP-Posting-Host: sage.compnews.co.uk
X-Newsreader: Tin 1.1 PL4

Just thought you'd like to know - 800+ pages of the new UK Teletext service
that went live on January 1 are being driven by a Tcl script.

--

phil 
   ___/   /
   /_/)  /             Phil Male, Director, Information Systems
  / /_ '/  Computer Newspaper Services, The Bishops Manor, Howden, DN14 7BL
 / / ///    +44 43043 Tel: 1100 Fax: 1108/2022  email: phil@compnews.co.uk
From: ouster@sprite.Berkeley.EDU (John Ousterhout)
Newsgroups: comp.lang.tcl
Subject: Re: Error (?): Menus visible through above window
Date: 21 Dec 1992 17:04:45 GMT
Organization: U.C. Berkeley Sprite Project
Distribution: world
NNTP-Posting-Host: tyranny.berkeley.edu

In article <1992Dec21.142948.2840@dxcern.cern.ch>, trones@dxcern.cern.ch (Jostein Lodve Trones) writes:
|> 
|> I have encountered a somewhat strange feature using tk ver 2.3.
|> 
|> Two windows (toplevel) are both containing a menubutton (or several).
|> I place the windows more or less above eachother, and arrange it so
|> that the upper window obscures a menubutton on the bottom window.
|> 
|> If I now click the menubutton on the above window, the menu appears just
|> as it should. But if I keep the mousebutton pressed, and move the pointer
|> to were the menubutton on the lower window is, the menu of
|> this menubutton will pop up, even though the menubutton is not visible.
|> 
|> Didn't find anything about this in the faq, so I thought I should ask here.
|> Is this a deliberate feature? 
|> 
|> It could in fact be a problem if you place two windows containing several menubuttons above eachother
|> 
|> Merry Christmas and Happy New Year everyone!
|> 
|> Cheers,
|> 	Jostein

It's a bug in 2.3.  It should be fixed in the 3.0 release.
Newsgroups: comp.lang.tcl
From: shmdgljd@rchland.vnet.ibm.com (Jay Schmidgall)
Subject: re: making a listbox wider
Date: Wed, 30 Dec 1992 00:11:52 GMT
Reply-To: jay@vnet.ibm.com
Disclaimer: This posting represents the poster's views, not necessarily those of IBM
Organization: IBM Rochester, MN

In article <1992Dec29.200648.2598@choreo.ca>, news@choreo.ca (Choreo NetNews Administration Account(Ottawa)) writes:
|> but tcl complains that it can't read $maxlenx10.  How I tell tcl that
|> $maxlen is the name of the variable?  Is there a construct similar to
|> ${name} in the shell?

You guessed it; use -geometry ${maxlen}x10
-- 
: jay          jay@vnet.ibm.com    My opinions and ideas, not my employer's.
: shmdgljd@rchland.vnet.ibm.com    (c) Copyright 1992.  All rights reserved.
Newsgroups: comp.lang.tcl
From: spencer@med.umich.edu (Spencer W. Thomas)
Subject: Re: Width error in Tk entry widget
Date: Mon, 21 Dec 92 12:00:39 EST
Organization: University of Michigan

I get it with tk2.3 and tk3.0 under SunOS 4.1.2.

With the 6x13 font, it seems to hold 3 extra characters.

--
=Spencer W. Thomas 		|  Info Tech and Networking, B1911 CFOB, 0704
   "Genome Informatician"	|  Univ of Michigan, Ann Arbor, MI 48109
Spencer.W.Thomas@med.umich.edu	|  313-747-2778, FAX 313-764-4133
Newsgroups: comp.lang.tcl
From: karl@NeoSoft.com (Karl Lehenbauer)
Subject: Tcl as a safe multimedia mail language (was Re: Insecurity of tk)
Organization: NeoSoft Communications Services -- (713) 684-5900
Date: Fri, 25 Dec 1992 06:32:17 GMT

In article <1992Dec23.172819.8380@walter.bellcore.com> Nathaniel Borenstein <nsb@thumper.bellcore.com> writes:
>I have also thought, in recent months, that Tcl/TK might be a better
>basis for a secure mail-based programming language than LISP, which is
>the language model for ATOMICMAIL.  Basically, what we'd need would be a
>sort of castrated version of the Tcl/TK interpreter, in which all
>potentially dangerous actions were removed or replaced with less
>dangerous variants.  If anyone else is interested in pursuing this idea,
>I'd be delighted to collaborate...  -- Nathaniel

You can test some of your ideas with respect to Tcl as a safe multimedia
mail language without resorting to C at all -- if you use "rename" and
rename a command to "", it is effectively deleted from the interpreter.

It would be nice if your support procs could read and write files and such,
while procs embedded in mail, or whatever, could only access the restricted
set.

Dave Herron's multiple interpreter stuff might be just the ticket.

If anyone wants to drop us some mail, we'd be happy to discuss this stuff
further, or in the newsgroup, or whatever...

Karl
-- 
-- Email info@NeoSoft.com for info on getting interactive Internet access.
"In a minute, I'll burp up your droid."
Newsgroups: comp.lang.tcl
From: karl@NeoSoft.com (Karl Lehenbauer)
Subject: Re: tcl function for dates
Organization: NeoSoft Communications Services -- (713) 684-5900
Date: Thu, 24 Dec 1992 02:10:33 GMT

In article <1h7qe1INNck1@gazette.bcm.tmc.edu> prabhag@nicolle.iaims.bcm.tmc.edu (Prabha Ganapathy) writes:
>I'm looking for a function for manuplating dates, similar to one available on
>relational databases as Sybase. Is someone has written a similar function, or knows
>where I can find the code, please send me e-mail.

I don't know what Sybase offers, so I can't compare them to the date functions 
that come with Extended Tcl, but I can tell you about those.

"fmtclock" turns Unix since-1970 integer values into reasonable, human-
readable dates and times according to a format string.  Essentially,
it's a Tcl interface to strftime.

"getclock" returns the current time as an integer value.

"convertclock", one of my favorites, interfaces to the getdate.y grammar
``everybody'' uses to parse the myriad date formats generated by all the
various news and mail clients.  It takes a date and/or time string and
returns the equivalent since-1970 integer time.

Tcl also has the three commands "file atime", "file mtime" and "file ctime"
which return the atime, mtime and ctime for files as an int, plus there's the
"file stat" and "file lstat" commands, and Extended Tcl has "fstat" for
statting open filehandles.

-- 
-- Email info@NeoSoft.com for info on getting interactive Internet access.
"In a minute, I'll burp up your droid."
From: mdm@pear.cis.ohio-state.edu (Michael Moore)
Subject: Stupid Question
Organization: The Ohio State University Dept. of Computer and Info. Science
Date: Wed, 23 Dec 1992 20:21:52 GMT



	I know this is a dumb question, but why is the libtk.a library
a third the size of tk2.3?  Was it something John did in the overhaul or
the way it was archived, perhaps?  Whatever the case may be, I'm glad it
shrunk.  The smaller the better!

	Thanks,

	-Michael 
-- 
|\  Michael  Delbert  Moore     _   /|     Home   : (614) 471-1937         /|
| \ OSU Student  Programmer     \`o_O'     Office : (614) 292-7161        / |
| / Undergraduate CIS major       ( )      Email  : mdm@cis.ohio-state.edu\ |
|/-------------------------        U       --------------------------------\|
From: joel@saffron.CS.Berkeley.EDU (Joel A. Fine)
Newsgroups: comp.lang.tcl
Subject: Re: Advice wanted on math functions for Tcl 7.0
Date: 22 Dec 1992 02:26:10 GMT
Organization: UC Berkeley, Computer Science Division
Distribution: world
NNTP-Posting-Host: saffron.cs.berkeley.edu

In article <1h5pseINNkvu@agate.berkeley.edu>, ouster@sprite.Berkeley.EDU (John Ousterhout) writes:
|> There are two possible ways to implement math functions: embedded into
|> expr or as separate commands.

A comment:

If they are embedded into expr, it is trivial to generate the separate commands later:

proc sin {n} {
  return [expr {sin($n)}]
}

A library tcl file that enumerates each of the math functions could be shipped
with the standard release of tcl, and optionally sourced. This way both alternatives
could be accomodated.

I don't see a simple way to emulate the expr-embedding approach using function
definitions. If other considerations leave it a toss-up, I'd go with embedding it
into expr for this reason.

- Joel Fine
joel@cs.berkeley.edu
From: capo@cs.utexas.edu (Charles Read)
Newsgroups: comp.lang.tcl
Subject: scrollbars on a canvas?
Date: 22 Dec 1992 16:18:14 -0600
Organization: CS Dept, University of Texas at Austin
NNTP-Posting-Host: im4u.cs.utexas.edu
Keywords: scrollbar canvas frame

All examples for making scrollbars 
given in the demos directory in Tk
put scrollbars on either frames 
or toplevel windows.

Does anyone have an example which
shows how scrollbars may be put
on canvases?

-c