\documentclass[]{article}
\usepackage{amsmath,graphicx,supertabular,hyperref,tabularx,ifthen}
\title{TIP \#3: TIP Format}
\date{September 14, 2000}
\author{Andreas Kupries, Donal K. Fellows}
\urlstyle{sf}
\setlength{\parskip}{1ex}
\setlength{\parindent}{0pt}
\def\tipversion$#1${\texttt{\$#1\$}}
\def\tiplangle#1{\ensuremath{<}}
\def\tiprangle#1{\ensuremath{>}}
\def\tipbar#1{\ensuremath{|}}
\def\tipmail#1#2{\(\langle\){\small\expandafter\url{#1@#2}}\(\rangle\)}
\ifx\pdfoutput\undefined
\newcommand{\tipimage}[2]{\typeout{Make sure you download #1.eps}\ifthenelse{\lengthtest{0.8\textwidth>#2}\and\lengthtest{0pt<#2}}{\includegraphics{#1.eps}}{\includegraphics[width=0.8\textwidth]{#1.eps}}}
\newcommand{\tipxref}[1]{}
\newcommand{\tipxrefend}{}
\else
\newcommand{\tipimage}[2]{\typeout{Make sure you create #1.pdf}\ifthenelse{\lengthtest{0.8\textwidth>#2}\and\lengthtest{0pt<#2}}{\includegraphics{#1.pdf}}{\includegraphics[width=0.8\textwidth]{#1.pdf}}}
\pdfcatalog{/PageMode /UseOutlines}
\newcommand{\tipxref}[1]{\pdfannotlink attr {/C [0.5 0.5 1.0] /Border [0 0 1]} goto name {#1}}
\newcommand{\tipxrefend}{\pdfendlink}
\fi
\newenvironment{tipabstract}{\begin{abstract}}{\end{abstract}}
\begin{document}\maketitle
\begin{center}\begin{tabularx}{\linewidth}{|r@{: }X|}\hline
\textbf{TIP \#3}&\textbf{TIP Format}\\\hline
Author&

Andreas Kupries \tipmail{a.kupries}{westend.com}
\par
Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
Created&Thursday, \(\text{14}^{\text{th}}\) September 2000\\
Type&Process\\
State&Accepted\\
Vote&Done\\
Version&\tipversion$Revision: 1.8 $\\
Post History&\\
\hline\end{tabularx}\end{center}
\thispagestyle{empty}\pagestyle{empty}
\begin{tipabstract}

This TIP is a companion document to the TIP Guidelines \cite{tip2} and describes the structure and formatting to use when writing a TIP.
\end{tipabstract}
\tableofcontents\setcounter{page}{0}\clearpage\pagestyle{plain}

\section{Rationale}

The major goals of this document are to define a format that is
\begin{itemize}
\item{}
easy to write,
\item{}
easy to read,
\item{}
easy to search, and
\item{}
acceptable to the community at large.
\end{itemize}

The latter is important because non-acceptance essentially means that the TIP process will be stillborn. This not only means basically plain text without much markup but also that we should reuse formats with which people are already acquainted.

As the concept of TIPs borrows heavily from Python's PEPs [\url{http://python.sourceforge.net/peps/}] their definition on how to structure and format a PEP was reviewed for its suitability of use by the TCT and the community at large.

The major points of the format are:
\begin{itemize}
\item{}
Plain ASCII text without special markup for references or highlighting of important parts.
\item{}
Mail-like header section containing the meta-information.
\item{}
Uses indentation to distinguish section headers from section text.
\end{itemize}

A header section like is used in mail or news is something people are acquainted with and fulfils the other criteria too. In addition it is extendable. Using indentation to convey semantic and syntactic information on the other hand is something Pythonistas are used to but here in the Tcl world we are not to the same extent.

Looking at bit closer to home we find the Tcl'ers Wiki [\url{http://wiki.tcl.tk/}]

It does use a plain text format with some very light formatting conventions to allow things like links, images, enumerated and itemized lists.

Given the rather high acceptance of this site by the community using its format should be beneficiary to the acceptance of TIPs too.

It is therefore proposed to use a combination of a header in mail/news style together with a body employing a slightly extended/modified Wiki format (mostly backward compatible) as the format for TIPs. This proposed format is specified in detail below.

\textit{Note} that the use of TAB characters within a TIP is discouraged (but permitted) as some mailers (notably Outlook Express) make a mess of them. Please be considerate and avoid their use...

\section{Rejected Alternatives}

But before we specify the format a (short) discussion of possible alternatives and why they where rejected.

There were three primary competitors to the format specified below, these are SGML/XML, HTML and a markup based upon plain text with embedded tcl-commands, for example like ... [section Abstract] ...
\begin{itemize}
\item{}
The main disadvantage of SGML and XML based solutions is that they require a much more heavyweight infrastructure for editing and processing documents using them, like specialized editors and extensions for parsing. The format below on the other hand can be processed using pure tcl without extensions. with respect to the specialized editors it should be said that an editor operating on plain ASCII is possible too, but then the text will be difficult to read for humans because of the many occurrences of \tiplangle{} and \tiprangle{}, conflicting with the requirement to have an 'easy to read' format.

While there are commercial products which can gloss over this, making the editing of XML fairly easy, not everyone currently has access to one or the desire to spend what might be quite a lot of money to acquire one. It is far better to let everyone continue to use their current favourite plain-text editor.
\item{}
The main problem of HTML is that it is focused on visual and not logical markup. This will make it, although not impossible, but very difficult to parse documents for automatic handling. It is also a poor format for producing printed versions of the documentation from. Experience has also shown that different people have widely different ideas about how the content of TIP documents should be rendered into HTML, an indication that using the language would prove problematic! We can still use HTML as a generated format, but we should not write the documents themselves in it.
\item{}
The approach of embedding tcl commands into the text of a TIP is (at least) as powerful as XML when it comes to automatic processing of documents but much more lightweight. Because of this it is seen as the best of the three rejected alternatives. It was rejected in the end because it was still seen as too heavyweight/demanding for the casual user with respect to learning, easy writing and reading.
\end{itemize}

\section{Header Format}

The general format of the header for a TIP is specified in RFC 822 [\url{http://www.rfc-editor.org/rfc/rfc822.txt}]. This leaves us to define and explain the keywords, their meaning and their values. The following keywords are \textit{required}, and unless otherwise stated, should occur exactly once:
\begin{description}
\item[TIP]
 The number of the TIP as assigned by the TIP editor. Unchangeable later on.
\item[Title]
 Defines the title of the document using plain text. May change during the discussion and review phases.
\item[Version]
 Specifies the version of the document. Usually something like \$Revision: 1.8 \$. (Initially \$Revision: 1.8 \$ should be used, which is then changed by the version control to contain the actual revision number.
\item[Author]
 Contact information (email address) for each author. The email address has to contain the real name of the author. If there are multiple authors of the document, this header may occur multiple times (once per author.) The format should be approximately like this: \textit{Firstname Lastname \tiplangle{}emailaddress\tiprangle{}}
\item[State]
 Defines the state the TIP is currently in. Allowed values are \textit{Draft}, \textit{Active}, \textit{Accepted}, \textit{Deferred}, \textit{Final}, \textit{Rejected} and \textit{Withdrawn}. This list will be influenced by the finalization of the workflow in \cite{tip2}.
\item[Type]
 The type of the TIP. Allowed values are \textit{Process}, \textit{Project} and \textit{Informative}. See \cite{tip2} for more explanations about the various types.
\item[Vote]
 The current state of voting for the TIP. Allowed values are \textit{Pending}, \textit{In progress}, \textit{Done} and \textit{No voting}. The latter is used to indicate a TIP which doesn't require a vote, for example \cite{tip1}.
\item[Created]
 The date the TIP was created, in the format dd-mmm-yyyy. \textit{mmm} is the (English) short name of the month. The other information is numerical. Example: 14-Sep-2000

All numeric dates, though more easily internationalised, are not used because the ordering of particularly the month and day is ambiguous and subject to some confusion between different locales. Unix-style timestamps are unreadable to the majority of people (as well as being over-precise,) and I (\tipmail{fellowsd}{cs.man.ac.uk}) don't know ISO 8601 well enough to be able to comment on it.
\item[Post-History]
 A list of the dates the document was posted to the mailing list for discussion.
\item[Tcl-Version]
 This indicates the version of Tcl that a Project TIP depends upon (where it is required.) Process and Informative TIPs \textit{must not} have this keyword.
\end{description}

The following headers are \textit{optional} and should (unless otherwise stated) occur at most once:
\begin{description}
\item[Discussions-To]
 While a TIP is in private discussions (usually during the initial Draft phase), this header will indicate the mailing list or URL where the TIP is being discussed.
\item[Obsoletes]
 Indicates a TIP number that this TIP renders obsolete. (Thanks to Joel Saunier \tipmail{Joel.Saunier}{agriculture.gouv.fr} for suggesting this!)
\item[Obsoleted-By]
 Indicates a TIP number that renders this TIP obsolete. (Thanks to Joel Saunier \tipmail{Joel.Saunier}{agriculture.gouv.fr} for suggesting this!)
\item[Keywords]
 A comma-separated list of keywords relating to this TIP, to facilitate automated indexing and improve search engine results.
\end{description}

The following headers are \textit{proposed} (by Donald G. Porter \tipmail{dgp}{cam.nist.gov}) but not currently supported:
\begin{description}
\item[Sponsor]
 A TCT member that is sponsoring this TIP. May occur multiple times, once per sponsor.
\item[Supporter]
 A person (not necessarily a TCT member) who is supporting this TIP. May occur multiple times, once per supporter.
\item[Objector]
 A person (not necessarily a TCT member) who is opposed to this TIP. May occur multiple times, once per objector.
\end{description}

\section{Body Format}

The body of a TIP is split by visually blank lines (i.e. lines containing nothing other than conventional whitespace) into units that will be called paragraphs. Each paragraph is in one of the following forms.

If the paragraph consists of exactly four minus symbols ``-{}-{}-{}-'' then it is a separator paragraph and should be rendered as a horizonal rule.

If the paragraph consists of a vertical bar ``\tipbar{}'' followed by text, then it is a verbatim paragraph. The bar will be stripped from the front of each line and the rest of the text will be formatted literally. Tab characters will be expanded to 8-character boundaries. (\textit{Note that this is completely incompatible with the Tcl'ers Wiki.})

If the paragraph consists of one or more tildes ``\~{}'' (which may be space-separated) followed by text, then it is a section heading. The text following is the name of the section. In the name of good style, the section heading should have its significant words capitalised. The number of tildes indicates whether this is a section heading, a subsection heading or a subsubsection heading (one, two or three tildes respectively.)

If the paragraph consists of the sequence ``\#index:'' followed by some optional text, then it is a request to insert an index. The text following (after trimming spaces) indicates the kind of index desired. The default is a ``medium'' index, and fully compliant implementations should support ``short'' (expected to contain less detail) and ``long'' (expected to contain all header details plus the abstract) as well. Support for other kinds of indices is optional.

If the paragraph consists of the sequence ``\#image:'' followed by some text, then it is a request to insert an image. The first word of the following text is a reference to the image, and the other words are an optional caption for the image (in plain text.) Image references that consist of just letters, numbers, hyphens and underscores are handled specially by the current implementation, which can map them to the correct media type for its current output format (assuming it has a suitable image in its repository.)

All other paragraphs that start with a non-whitespace character are ordinary paragraphs.

If a paragraph starts with a whitespace character sequence (use three spaces and keep the whole paragraph on a single line if you want compatability with the Tcl'ers Wiki,) a star ``*'' and another whitespace character, it is an item in a bulleted list.

If a paragraph starts with a whitespace character sequence, a number, a full stop ``.'' and another whitespace character, it is an item in an enumerated list. If the number is 1 then the number of the item is guessed from the current list context, and any other value sets the number explicitly. If you want compatability with the Tcl'ers Wiki, make the initial whitespace sequence be three spaces, the number be 1, and keep the whole paragraph on a single line.

If a paragraph starts with a whitespace character sequence, some text (that includes no tabs or newlines but can include spaces), a colon and another whitespace character, then it is an item in a descriptive (a.k.a. definition) list. The item being described cannot contain advanced formatting (including any kind of emphasis) because this is not supported by all formats that a TIP may be viewed in.

If a paragraph does not start with a whitespace character sequence, a greater than symbol ``\tiprangle{}'', and then another whitespace character, it is also an ordinary paragraph. (\textit{Note that this is completely incompatible with the Tcl'ers Wiki.})

Where a paragraph does begin with the sequence described in the preceding paragraph, it is a nested list item (if the paragraph contained is a list item) or a subsequent paragraph (if the paragraph contained is an ordinary paragraph.) If there's no suitable ``enclosing'' list context (i.e. if the preceding paragraph was not part of a list) the paragraph will be a quotation instead. (The rules for these continuation paras seem complex at first glance, but seem to work out fairly well in practise, especially since they are only rarely used.)

Within the body text of a (non-verbatim) paragraph, there are two styles of emphasis:
\begin{itemize}
\item{}
italicised emphasis is indicated by enclosing the text within inside double apostrophes ``\(''\)''
\item{}
emboldened emphasis is indicated by enclosing the text within inside triple apostrophes ``\('''\)''.
\end{itemize}

The two emphasis styles should not be nested. Special URLs of the form tip:tipnumber are expanded into full URLs to the given TIP through the current formatting engine (where applicable.) References of the form [tipnumber] are also expanded as links to the given TIP, but are not displayed as URLs (the expansion is format dependent, of course.) Doubled up square brackets are converted into matching single square brackets. Email addresses (of the form \tipmail{email}{address}) and ordinary URLs in single square brackets might also be treated specially.

The first paragraph of the body of any TIP must be an abstract section title (``\~{}Abstract'' or ``\~{} Abstract''), and the second must be an ordinary paragraph (and should normally be just plain text, to make processing by tools easier.)

You can compare these rules with those for the Tcl'ers Wiki which are described at \url{http://wiki.tcl.tk/14.html}, with the following modifications:
\begin{enumerate}
\item{}
The text for an item in an itemized, enumerated or tagged list can be split over multiple physical lines. The text of the item will reach until the next empty line.
\item{}
All paragraphs \textit{must} be split with whitespace. This is a corollary of the above item.
\item{}
A paragraph starting with the character \~{} is interpreted as a section heading. Consequently it should be very short so that it renders onto a single line under most circumstances.
\item{}
A full verbatim mode is added. Any line starting with the bar character is reproduced essentially verbatim (the bar character is removed). This allows embedding of code or other texts containing formatting usually recognized as special by the formatter without triggering this special processing. This applies especially to brackets and the hyperlinking they provide and their role in tcl code. This is used in preference to the whitespace rule of the Tcl'ers Wiki which is potentially far more sensitive. Our rule makes it extremely obvious what lines are verbatim, and what those lines will be rendered as.
\item{}
Only one style of emphasis within paragraphs is supported. Having multiple emphasis styles (italic and bold) not only fails to carry across well in all media, but also makes for confusion on the part of authors and is more difficult to write renderers for too.
\item{}
Images are only supported in a limited way, since under HTML the support for images varies a lot more than most people would like to think, and the concept of an inline image can vary quite a lot between different rendered formats too.
\end{enumerate}

\section{Reference Implementation}

A reference renderer was created by Donal Fellows \tipmail{fellowsd}{cs.man.ac.uk} and is installed (as a behind-the-scenes rendering engine) on a set of TIP documents [\url{http://www.cs.man.ac.uk/fellowsd-bin/TIP}] with the source code to the rendering engine being available [\url{http://sf.net/projects/tiprender/}]

Note that this code does support nested lists and multi-paragraph items, but this is experimental right now. Examples are presented behind the code itself.

\vspace{3ex}\hrule\vspace{1.5ex}

\section{Examples}

This document itself is an example of the new format.

\textit{Examples for nested lists, multi-paragraph items in list's, and quotations.}

Here is the source (itself a demonstration of verbatim text)
\begingroup\small\begin{verbatim}
 * This is a paragraph

 > * This is an inner paragraph
     that goes onto two lines.

 > > * This one's even further in!

 > > * So's this one.

 > * Out again

 > > And a second paragraph here...

 > * Yet another item.

 * Outermost level once more.

 1. Enumerate?

 > 1. Deeper?

 2. Out again?

 list item: body text that is relatively long so that we can tell
   that it laps round properly as a paragraph even though this takes a
   ridiculous amount of text on my browser...

| VERB IN LIST?

 > nested: body

Top-level paragraph once more.

 > A quotation from someone famous might be rendered something like
   this.  As you can see, it is inset somewhat from the surrounding
   text. - ''Donal K. Fellows <fellowsd@cs.man.ac.uk>''

And back to the top-level yet again.  Now we show off both ''italic''
and '''bold''' text.

----
\end{verbatim}
\endgroup

and the rendered result
\begin{itemize}
\item{}
This is a paragraph
\begin{itemize}
\item{}
This is an inner paragraph that goes onto two lines.
\begin{itemize}
\item{}
This one's even further in!
\item{}
So's this one.
\end{itemize}
\item{}
Out again

And a second paragraph here...
\item{}
Yet another item.
\end{itemize}
\item{}
Outermost level once more.
\end{itemize}
\begin{enumerate}
\item{}
Enumerate?
\begin{enumerate}
\item{}
Deeper?
\end{enumerate}
\setcounter{enumi}{1}
\item{}
Out again?
\end{enumerate}
\begin{description}
\item[list item]
body text that is relatively long so that we can tell that it laps round properly as a paragraph even though this takes a ridiculous amount of text on my browser...
\begingroup\small\begin{verbatim}
 VERB IN LIST?
\end{verbatim}
\endgroup
\begin{description}
\item[nested]
body
\end{description}
\end{description}

Top-level paragraph once more.

\begin{quote}
A quotation from someone famous might be rendered something like this. As you can see, it is inset somewhat from the surrounding text. --- \textit{Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}}
\end{quote}

And back to the top-level yet again. Now we show off both \textit{italic} and \textbf{bold} text.

\vspace{3ex}\hrule\vspace{1.5ex}

\textit{Examples of index generation and image paragraphs.}

Here is the code
\begingroup\small\begin{verbatim}
#index:

#index:short

#index: long

#image:3example This is a test caption

This is an example long TIP reference tip:3 that should be expanded in
a renderer-specific way...

This is an example non-reference - ''index[[3]]'' - that should not
be rendered as a link (to this document or anywhere else) at all.
Note that the dashes in the previous sentence (with whitespace on
each side) are candidates for rendering as long dashes (em-dashes) on
output-media which support this.

 Supported URLs: should be http, https, mailto, news, newsrc, ftp and
   gopher.  Test here...

 > HTTP URL - http://purl.org/thecliff/tcl/wiki/

 > HTTP URL in brackets - [http://wiki.tcl.tk]

 > HTTPS URL - https://sourceforge.net/

 > FTP URL - ftp://src.doc.ic.ac.uk/packages/tcl/tcl/

 > NEWS URL - news:comp.lang.tcl

 > MAILTO URL - mailto:fellowsd@cs.man.ac.uk?subject=TIP3
 
 > Others (might not be valid links!) - gopher://info.mcc.ac.uk,
   newsrc:2845823825
\end{verbatim}
\endgroup

and here is the rendered result.

\begin{center}\begin{supertabular}{c|ll|p{2.5in}}
\textbf{TIP ID}&\textbf{Type}&\textbf{State}& \textbf{Title}\\\hline
\small TIP \#0&\small Process&\small Final&\small Tcl Core Team Basic Rules
\\\small TIP \#1&\small Inform.&\small Active&\small TIP Index
\\\small TIP \#2&\small Process&\small Draft&\small TIP Guidelines
\\\small TIP \#3&\small Process&\small Accep.&\small TIP Format
\\\small TIP \#4&\small Inform.&\small Draft&\small Tcl Release and Distribution Philosophy
\\\small TIP \#5&\small Project&\small Final&\small Make TkClassProcs and TkSetClassProcs Public and Extensible
\\\small TIP \#6&\small Project&\small Rejec.&\small Include [Incr Tcl] in the Core Tcl distribution
\\\small TIP \#7&\small Project&\small Final&\small Increased resolution for TclpGetTime on Windows
\\\small TIP \#8&\small Project&\small Final&\small Add Winico support to the wm command on windows
\\\small TIP \#9&\small Project&\small Withd.&\small Tk Standard Library
\\\small TIP \#10&\small Project&\small Final&\small Tcl I/O Enhancement: Thread-Aware Channels
\\\small TIP \#11&\small Project&\small Final&\small Tk Menubutton Enhancement: -compound option for menubutton
\\\small TIP \#12&\small Inform.&\small Draft&\small The ``Batteries Included'' Distribution
\\\small TIP \#13&\small Process&\small Accep.&\small Web Service for Drafting and Archiving TIPs
\\\small TIP \#14&\small Project&\small Final&\small Access to Tk Photo Image Transparency
\\\small TIP \#15&\small Project&\small Final&\small Functions to List and Detail Math Functions
\\\small TIP \#16&\small Process&\small Accep.&\small Tcl Functional Areas for Maintainer Assignments
\\\small TIP \#17&\small Project&\small Final&\small Redo Tcl's filesystem
\\\small TIP \#18&\small Project&\small Final&\small Add Labels to Frames
\\\small TIP \#19&\small Project&\small Final&\small Add a Text Changed Flag to Tk's Text Widget
\\\small TIP \#20&\small Project&\small Defer.&\small Add C Locale-Exact CType Functions
\\\small TIP \#21&\small Project&\small Final&\small Asymmetric Padding in the Pack and Grid Geometry Managers
\\\small TIP \#22&\small Project&\small Final&\small Multiple Index Arguments to lindex
\\\small TIP \#23&\small Process&\small Accep.&\small Tk Toolkit Functional Areas for Maintainer Assignments
\\\small TIP \#24&\small Inform.&\small Draft&\small Tcl Maintainer Assignments
\\\small TIP \#25&\small Project&\small Withd.&\small Native tk\_messageBox  on Macintosh
\\\small TIP \#26&\small Project&\small Final&\small Enhancements for the Tk Text Widget
\\\small TIP \#27&\small Project&\small Final&\small CONST Qualification on Pointers in Tcl API's
\\\small TIP \#28&\small Inform.&\small Draft&\small How to be a good maintainer for Tcl/Tk
\\\small TIP \#29&\small Project&\small Rejec.&\small Allow array syntax for Tcl lists
\\\small TIP \#30&\small Inform.&\small Draft&\small Tk Toolkit Maintainer Assignments
\\\small TIP \#31&\small Inform.&\small Draft&\small CVS tags in the Tcl and Tk repositories
\\\small TIP \#32&\small Project&\small Final&\small Add Tcl\_Obj-enabled counterpart to Tcl\_CreateTrace
\\\small TIP \#33&\small Project&\small Final&\small Add 'lset' Command to Assign to List Elements.
\\\small TIP \#34&\small Project&\small Withd.&\small Modernize TEA Build System
\\\small TIP \#35&\small Project&\small Final&\small Enhanced Support for Serial Communications
\\\small TIP \#36&\small Project&\small Final&\small Library Access to 'Subst' Functionality
\\\small TIP \#37&\small Project&\small Final&\small Uniform Rows and Columns in Grid
\\\small TIP \#38&\small Project&\small Withd.&\small Add Support for Default Bindtags
\\\small TIP \#39&\small Project&\small Withd.&\small Add New Standard Tk Option: -component
\\\small TIP \#40&\small Project&\small Withd.&\small Documentation Generator for Tcl Scripts
\\\small TIP \#41&\small Project&\small Final&\small Paned Window Tk Widget
\\\small TIP \#42&\small Project&\small Withd.&\small Add New Standard Tk Option: -clientdata
\\\small TIP \#43&\small Inform.&\small Draft&\small How to be a TIP Editor
\\\small TIP \#44&\small Project&\small Final&\small Move Tk's Private Commands and Variables into ::tk Namespace
\\\small TIP \#45&\small Project&\small Final&\small Empty index lists for [lindex] and [lset]
\\\small TIP \#46&\small Project&\small Withd.&\small Consistent Overlap Behavior of Area-Defining Canvas Items 
\\\small TIP \#47&\small Project&\small Final&\small Modifying Tk to Allow Writing X Window managers
\\\small TIP \#48&\small Project&\small Final&\small Tk Widget Styling Support
\\\small TIP \#49&\small Project&\small Final&\small I/O Subsystem: Add API Tcl\_OutputBuffered(chan)
\\\small TIP \#50&\small Inform.&\small Final&\small Bundle [incr Tcl] with the Core Tcl distribution
\\\small TIP \#51&\small Project&\small Withd.&\small Native Menubutton on Macintosh
\\\small TIP \#52&\small Project&\small Withd.&\small Hierarchical Namespace Lookup of Commands and Variables
\\\small TIP \#53&\small Project&\small Withd.&\small Addition of 'assert' Command
\\\small TIP \#54&\small Process&\small Withd.&\small Using PURLs to Unite the Tcl Webspace
\\\small TIP \#55&\small Inform.&\small Draft&\small Package Format for Tcl Extensions
\\\small TIP \#56&\small Project&\small Final&\small Standardize Call Interface to Tcl\_Eval* Functions
\\\small TIP \#57&\small Project&\small Final&\small Move TclX's [lassign] into the Tcl Core
\\\small TIP \#58&\small Project&\small Rejec.&\small Extend [set] to Assign Multiple Values to Multiple Variables
\\\small TIP \#59&\small Project&\small Final&\small Embed Build Information in Tcl Binary Library
\\\small TIP \#60&\small Project&\small Rejec.&\small EXTERN Macro Change to Support a Wider Set of Attributes
\\\small TIP \#61&\small Project&\small Defer.&\small Make TK\_NO\_SECURITY Run-Time Switchable
\\\small TIP \#62&\small Project&\small Final&\small Add Support for Command Tracing
\\\small TIP \#63&\small Project&\small Final&\small Add -compound Option to Menu Entries
\\\small TIP \#64&\small Project&\small Defer.&\small Improvements to Windows Font Handling
\\\small TIP \#65&\small Project&\small Rejec.&\small Enhanced [info args]
\\\small TIP \#66&\small Inform.&\small Draft&\small Stand-alone and Embedded Tcl/Tk Applications
\\\small TIP \#67&\small Project&\small Withd.&\small Allow Subclassing of tk\_getOpenFile, tk\_getSaveFile on UNIX
\\\small TIP \#68&\small Project&\small Final&\small Dynamic Trace Result Handling
\\\small TIP \#69&\small Project&\small Draft&\small Improvements for the Tcl Hash Table
\\\small TIP \#70&\small Project&\small Withd.&\small A Relational Switch Control Structure
\\\small TIP \#71&\small Project&\small Withd.&\small Tk Bitmap Image Improvements
\\\small TIP \#72&\small Project&\small Final&\small 64-Bit Value Support for Tcl on 32-Bit Platforms
\\\small TIP \#73&\small Project&\small Final&\small Export Tcl\_GetTime in the Public API
\\\small TIP \#74&\small Project&\small Final&\small wm stackorder command
\\\small TIP \#75&\small Project&\small Final&\small Refer to Sub-RegExps Inside 'switch -regexp' Bodies
\\\small TIP \#76&\small Project&\small Final&\small Make 'regsub' Return a String
\\\small TIP \#77&\small Project&\small Withd.&\small Support for Nested Paired Item Lists
\\\small TIP \#78&\small Inform.&\small Draft&\small TEA 2.0 Definitions
\\\small TIP \#79&\small Project&\small Final&\small Add Deletion Callback to Tcl\_CreateObjTrace
\\\small TIP \#80&\small Project&\small Final&\small Additional Options for 'lsearch'
\\\small TIP \#81&\small Process&\small Withd.&\small [incr Tcl] Functional Areas for Maintainer Assignments
\\\small TIP \#82&\small Project&\small Final&\small Add -offrelief Option to Checkbutton and Radiobutton
\\\small TIP \#83&\small Project&\small Withd.&\small Augment Tcl\_EvalFile with Tcl\_EvalChannel and Tcl\_EvalUrl
\\\small TIP \#84&\small Project&\small Final&\small Add control for mouse movement filtering
\\\small TIP \#85&\small Project&\small Final&\small Custom Comparisons in Tcltest
\\\small TIP \#86&\small Project&\small Draft&\small Improved Debugger Support
\\\small TIP \#87&\small Project&\small Final&\small Allow Tcl Access to the Recursion Limit
\\\small TIP \#88&\small Project&\small Rejec.&\small Extend Tcl Process Id Control via 'pid'
\\\small TIP \#89&\small Project&\small Withd.&\small Try/Catch Exception Handling in the Core
\\\small TIP \#90&\small Project&\small Final&\small Enable [return -code] in Control Structure Procs
\\\small TIP \#91&\small Project&\small Final&\small Backward Compatibility for Channel Types with 32-bit SeekProcs
\\\small TIP \#92&\small Project&\small Withd.&\small Move Package Load Decisions to Application Developer
\\\small TIP \#93&\small Project&\small Final&\small Get/Delete Enhancement for the Tk Text Widget
\\\small TIP \#94&\small Project&\small Final&\small Add Listbox -activestyle Option
\\\small TIP \#95&\small Project&\small Final&\small Add [wm attributes] Command
\\\small TIP \#96&\small Project&\small Final&\small Add [tk caret] Command and Tk\_SetCaretPos API
\\\small TIP \#97&\small Project&\small Final&\small Moving Vertices of Canvas Items
\\\small TIP \#98&\small Project&\small Final&\small Adding Transparency Compositing Rules to Photo Images
\\\small TIP \#99&\small Project&\small Final&\small Add 'file link' to Tcl
\\\small TIP \#100&\small Project&\small Final&\small Add Support for Unloading Dynamic Libraries Loaded with [load]
\\\small TIP \#101&\small Project&\small Final&\small Export Tcltest Configuration
\\\small TIP \#102&\small Project&\small Final&\small Change [trace list] to [trace info]
\\\small TIP \#103&\small Project&\small Rejec.&\small Argument Expansion Command
\\\small TIP \#104&\small Project&\small Final&\small Generalization of the Tk Undo Subsystem
\\\small TIP \#105&\small Project&\small Withd.&\small Add Prefix Matching for Switch
\\\small TIP \#106&\small Project&\small Final&\small Add Encoding Abilities to the [dde] Command
\\\small TIP \#107&\small Project&\small Final&\small Fix the 2-second ``raise delay'' in Tk
\\\small TIP \#108&\small Inform.&\small Final&\small Summary of Changes to Generic Tcl/Tk Code to Enable Mac OS X Port
\\\small TIP \#109&\small Project&\small Final&\small New Look for Checkbutton and Radiobutton on Unix
\\\small TIP \#110&\small Project&\small Final&\small Add a Tristate Mode to the Checkbutton and Radiobutton
\\\small TIP \#111&\small Project&\small Final&\small Dictionary Values and Manipulators
\\\small TIP \#112&\small Project&\small Final&\small Ensembles are Namespaces are Commands
\\\small TIP \#113&\small Project&\small Final&\small Multi-Line Searches in the Text Widget
\\\small TIP \#114&\small Project&\small Draft&\small Eliminate Octal Parsing of Leading Zero Integer Strings
\\\small TIP \#115&\small Project&\small Draft&\small Making Tcl Truly 64-Bit Ready
\\\small TIP \#116&\small Project&\small Final&\small More Safety for Large Images
\\\small TIP \#117&\small Project&\small Withd.&\small Object Type Introspection
\\\small TIP \#118&\small Project&\small Final&\small Enhance [file attributes] and [file copy] on Mac OS X \& BSD
\\\small TIP \#119&\small Project&\small Final&\small Angled Text on a Canvas
\\\small TIP \#120&\small Project&\small Final&\small Restricted DDE Services
\\\small TIP \#121&\small Project&\small Final&\small Controlled Application Shutdown via Tcl\_Exit
\\\small TIP \#122&\small Project&\small Rejec.&\small Use tcl\_\{non,\}wordchars Throughout Tcl/Tk
\\\small TIP \#123&\small Project&\small Final&\small Adding an Exponentiation Operator to the [expr] Command
\\\small TIP \#124&\small Project&\small Final&\small High-Resolution Absolute Time Values From [clock]
\\\small TIP \#125&\small Project&\small Final&\small Converting between Frame and Toplevel Windows
\\\small TIP \#126&\small Project&\small Draft&\small Rich Strings for Representation Persistence
\\\small TIP \#127&\small Project&\small Final&\small Add an -index Option to [lsearch]
\\\small TIP \#128&\small Project&\small Rejec.&\small Ability to Install a Custom Memory Allocator
\\\small TIP \#129&\small Project&\small Final&\small New Format Codes for the [binary] Command
\\\small TIP \#130&\small Project&\small Final&\small Unique DDE server names.
\\\small TIP \#131&\small Project&\small Draft&\small Read My Mind and Do What I Mean
\\\small TIP \#132&\small Project&\small Final&\small Revised Floating-Point Conversions in Tcl
\\\small TIP \#133&\small Project&\small Draft&\small Extending [expr] Operators
\\\small TIP \#134&\small Project&\small Withd.&\small Subsystem Per-Thread Data Interfaces
\\\small TIP \#135&\small Project&\small Final&\small Change 'dde servername -exact' Option to -force
\\\small TIP \#136&\small Project&\small Final&\small Large List Initialisation
\\\small TIP \#137&\small Project&\small Final&\small Specifying Script Encodings for [source] and tclsh
\\\small TIP \#138&\small Project&\small Final&\small New TCL\_HASH\_KEY\_SYSTEM\_HASH option for Tcl hash tables
\\\small TIP \#139&\small Project&\small Final&\small Publish Part of Tcl's Namespace API
\\\small TIP \#140&\small Project&\small Defer.&\small Tracing Namespace Modifications
\\\small TIP \#141&\small Project&\small Final&\small Multiple Initial-Files in [tk\_getOpenFile]
\\\small TIP \#142&\small Project&\small Withd.&\small Search Path Variable to Lookup Command Names in Namespaces
\\\small TIP \#143&\small Project&\small Final&\small An Interpreter Resource Limiting Framework
\\\small TIP \#144&\small Project&\small Withd.&\small Argument Expansion Syntax
\\\small TIP \#145&\small Project&\small Final&\small Enhanced Tk Font Handling
\\\small TIP \#146&\small Project&\small Final&\small Add Overall Anchoring to the Grid Geometry Manager
\\\small TIP \#147&\small Project&\small Final&\small Make Grid's Column/Row Configure Easier
\\\small TIP \#148&\small Project&\small Final&\small Correct [list]-Quoting of the '\#' Character
\\\small TIP \#149&\small Project&\small Withd.&\small Allow ``enabled'' as Synonym for ``normal'' in -state Option
\\\small TIP \#150&\small Project&\small Defer.&\small Implement the Tk send Command for Windows
\\\small TIP \#151&\small Project&\small Final&\small Remove -e: Command Line Option from tclsh and wish
\\\small TIP \#152&\small Project&\small Final&\small New -detail Option for tk\_messageBox
\\\small TIP \#153&\small Project&\small Final&\small Enhancing the [winfo toplevel] Command
\\\small TIP \#154&\small Project&\small Draft&\small Add Named Colors to Tk
\\\small TIP \#155&\small Project&\small Final&\small Fix Some of the Text Widget's Limitations
\\\small TIP \#156&\small Project&\small Final&\small Language-Neutral Root Locale for Msgcat
\\\small TIP \#157&\small Project&\small Final&\small Argument Expansion with Leading \{expand\}
\\\small TIP \#158&\small Project&\small Final&\small Distinguish the two 'Enter' keys on Windows
\\\small TIP \#159&\small Project&\small Final&\small Extending Tk 'wm' Command to Support Coloured Icons
\\\small TIP \#160&\small Project&\small Draft&\small Improvements to Terminal and Serial Channel Handling
\\\small TIP \#161&\small Project&\small Draft&\small Change Default for Menu's -tearoff Option to False
\\\small TIP \#162&\small Project&\small Final&\small IPv6 Sockets for Tcl
\\\small TIP \#163&\small Project&\small Final&\small A [dict merge] Subcommand
\\\small TIP \#164&\small Project&\small Draft&\small Add Rotate Subcommand to the Canvas Widget
\\\small TIP \#165&\small Project&\small Final&\small A User-Data Field for Virtual Events
\\\small TIP \#166&\small Project&\small Draft&\small Reading and Writing the Photo Image Alpha Channel
\\\small TIP \#167&\small Project&\small Draft&\small Add a New Option for Context Help for Windows
\\\small TIP \#168&\small Project&\small Final&\small Cubic Bezier Curves on the Canvas
\\\small TIP \#169&\small Project&\small Final&\small Add Peer Text Widgets
\\\small TIP \#170&\small Project&\small Draft&\small Better Support for Nested Lists
\\\small TIP \#171&\small Project&\small Final&\small Change Default \tiplangle{}MouseWheel\tiprangle{} Bindings Behavior
\\\small TIP \#172&\small Project&\small Withd.&\small Improve UNIX Tk Look and Feel
\\\small TIP \#173&\small Project&\small Final&\small Internationalisation and Refactoring of the 'clock' Command
\\\small TIP \#174&\small Project&\small Final&\small Math Operators as Commands
\\\small TIP \#175&\small Project&\small Withd.&\small Add an -async Option to [open]
\\\small TIP \#176&\small Project&\small Final&\small Add String Index Values
\\\small TIP \#177&\small Project&\small Final&\small Add -stretch Option to panedwindow Widget
\\\small TIP \#178&\small Project&\small Draft&\small [info pid] and [info tid] Subcommands
\\\small TIP \#179&\small Project&\small Final&\small Add -hide Option to panedwindow Widget
\\\small TIP \#180&\small Project&\small Draft&\small Add a Megawidget Support Core Package
\\\small TIP \#181&\small Project&\small Final&\small Add a [namespace unknown] Command
\\\small TIP \#182&\small Project&\small Final&\small Add [expr bool] Math Function
\\\small TIP \#183&\small Project&\small Final&\small Add a Binary Flag to [open]
\\\small TIP \#184&\small Project&\small Final&\small Avoid Creating Unusable Variables
\\\small TIP \#185&\small Project&\small Rejec.&\small Null Handling
\\\small TIP \#186&\small Project&\small Draft&\small Expose the Type and Modified-State of Widget Options
\\\small TIP \#187&\small Project&\small Rejec.&\small Procedures as Values
\\\small TIP \#188&\small Project&\small Final&\small Add 'string is wideinteger' to the 'string is' Subcommand
\\\small TIP \#189&\small Project&\small Final&\small Tcl Modules
\\\small TIP \#190&\small Inform.&\small Draft&\small Implementation Choices for Tcl Modules
\\\small TIP \#191&\small Inform.&\small Draft&\small Managing Tcl Packages and Modules in a Multi-Version Environment
\\\small TIP \#192&\small Project&\small Draft&\small Lazy Lists
\\\small TIP \#193&\small Project&\small Draft&\small Simple Syntax Help System
\\\small TIP \#194&\small Project&\small Final&\small Procedures as Values via \textbf{apply}
\\\small TIP \#195&\small Project&\small Final&\small A Unique Prefix Handling Command
\\\small TIP \#196&\small Project&\small Withd.&\small Tcl Commands as Values
\\\small TIP \#197&\small Project&\small Final&\small Unfocussed Text Widget Cursor Control
\\\small TIP \#198&\small Project&\small Draft&\small Image Command XPM Extension
\\\small TIP \#199&\small Project&\small Rejec.&\small Specification of Alternatives to .wishrc/.tclshrc
\\\small TIP \#200&\small Project&\small Rejec.&\small Listing the Values in an Array
\\\small TIP \#201&\small Project&\small Final&\small Add 'in' Operator to [expr]
\\\small TIP \#202&\small Project&\small Final&\small Add 2\tiprangle{}@1 Special Case to [open] and [exec]
\\\small TIP \#203&\small Project&\small Withd.&\small Create tclConfig.sh-Equivalent in Tcl
\\\small TIP \#204&\small Project&\small Final&\small Virtual Events for Keyboard Traversal
\\\small TIP \#205&\small Project&\small Final&\small Use pkgconfig Database to Register Xft Support
\\\small TIP \#206&\small Project&\small Rejec.&\small Add an [ftruncate] Command
\\\small TIP \#207&\small Project&\small Final&\small Add a -namespace Option to [interp invokehidden]
\\\small TIP \#208&\small Project&\small Final&\small Add a 'chan' Command
\\\small TIP \#209&\small Project&\small Final&\small Add [clock milliseconds], and [clock microseconds]
\\\small TIP \#210&\small Project&\small Final&\small Add 'tempfile' Subcommand to 'file'
\\\small TIP \#211&\small Project&\small Withd.&\small Add Full Stack Trace Capability
\\\small TIP \#212&\small Project&\small Final&\small Temporarily Opening out a Dictionary
\\\small TIP \#213&\small Project&\small Withd.&\small A Standard Dialog for Font Selection
\\\small TIP \#214&\small Project&\small Withd.&\small Add New Object Introspection Command
\\\small TIP \#215&\small Project&\small Final&\small Make [incr] Auto-Initialize Undefined Variables
\\\small TIP \#216&\small Project&\small Draft&\small Handling Command-Line Options in Tclsh and Wish
\\\small TIP \#217&\small Project&\small Final&\small Getting Sorted Indices out of Lsort
\\\small TIP \#218&\small Project&\small Final&\small Tcl Channel Driver Thread State Actions
\\\small TIP \#219&\small Project&\small Final&\small Tcl Channel Reflection API
\\\small TIP \#220&\small Project&\small Draft&\small Escalate Privileges in VFS Close Callback
\\\small TIP \#221&\small Project&\small Final&\small Allow Background Error Handlers to Accept Return Options
\\\small TIP \#222&\small Project&\small Final&\small Add [wm attributes -alpha] Attribute on Windows
\\\small TIP \#223&\small Project&\small Final&\small Full-Screen Toplevel Support for Tk
\\\small TIP \#224&\small Project&\small Draft&\small Add New [array] Subcommands 'incr' and 'value'
\\\small TIP \#225&\small Project&\small Draft&\small Arithmetic Series with Optimized Space Complexity
\\\small TIP \#226&\small Project&\small Final&\small Interface to Save and Restore Interpreter State
\\\small TIP \#227&\small Project&\small Final&\small Interface to Get and Set the Return Options of an Interpreter
\\\small TIP \#228&\small Project&\small Draft&\small Tcl Filesystem Reflection API
\\\small TIP \#229&\small Project&\small Final&\small Scripted Control of Name Resolution in Namespaces
\\\small TIP \#230&\small Project&\small Final&\small Tcl Channel Transformation Reflection API
\\\small TIP \#231&\small Project&\small Final&\small Support for [wm attributes] on X11
\\\small TIP \#232&\small Project&\small Final&\small Creating New Math Functions for the 'expr' Command
\\\small TIP \#233&\small Project&\small Final&\small Virtualization of Tcl's Sense of Time
\\\small TIP \#234&\small Project&\small Final&\small Add Support For Zlib Compression
\\\small TIP \#235&\small Project&\small Final&\small Exposing a C API for Ensembles
\\\small TIP \#236&\small Project&\small Final&\small Absolute Positioning of Canvas Items
\\\small TIP \#237&\small Project&\small Final&\small Arbitrary-Precision Integers for Tcl
\\\small TIP \#238&\small Project&\small Draft&\small Fire Event when Widget Created
\\\small TIP \#239&\small Project&\small Draft&\small Enhance the 'load' Command
\\\small TIP \#240&\small Project&\small Draft&\small An Ensemble Command to Manage Processes
\\\small TIP \#241&\small Project&\small Final&\small Case-Insensitive Switches and List Searching and Sorting
\\\small TIP \#242&\small Project&\small Final&\small Preselect Filter on tk\_get*File Dialogs
\\\small TIP \#243&\small Project&\small Draft&\small Supply Find Dialog for the Text Widget
\\\small TIP \#244&\small Project&\small Final&\small PNG Photo Image Support for Tk
\\\small TIP \#245&\small Project&\small Final&\small Discover User Inactivity Time
\\\small TIP \#246&\small Project&\small Draft&\small Unify Pattern Matching
\\\small TIP \#247&\small Inform.&\small Draft&\small Tcl/Tk Engineering Manual
\\\small TIP \#248&\small Project&\small Final&\small Integrate Tile into Tk as Ttk
\\\small TIP \#249&\small Inform.&\small Draft&\small Unification of Tcl's Parsing of Numbers
\\\small TIP \#250&\small Project&\small Final&\small Efficient Access to Namespace Variables
\\\small TIP \#251&\small Project&\small Rejec.&\small Enhance the 'list' Command
\\\small TIP \#252&\small Project&\small Rejec.&\small Add New 'string' Command Options
\\\small TIP \#253&\small Project&\small Draft&\small Consolidate Package-Related Commands
\\\small TIP \#254&\small Project&\small Final&\small New Types for Tcl\_LinkVar
\\\small TIP \#255&\small Project&\small Final&\small Add 'min' and 'max' [expr] Functions
\\\small TIP \#256&\small Project&\small Final&\small Implement Tabular and Wordprocessor Style Tabbing
\\\small TIP \#257&\small Project&\small Final&\small Object Orientation for Tcl
\\\small TIP \#258&\small Project&\small Final&\small Enhanced Interface for Encodings
\\\small TIP \#259&\small Project&\small Draft&\small Making 'exec' Optionally Binary Safe
\\\small TIP \#260&\small Project&\small Final&\small Add Underline Option to Canvas Text Items
\\\small TIP \#261&\small Project&\small Final&\small Return Imported Commands from [namespace import]
\\\small TIP \#262&\small Project&\small Draft&\small Background Images for Frames
\\\small TIP \#263&\small Project&\small Draft&\small Quantum Tcl
\\\small TIP \#264&\small Project&\small Final&\small Add Function to Retrieve the Interpreter of a Window
\\\small TIP \#265&\small Project&\small Final&\small A Convenient C-side Command Option Parser for Tcl
\\\small TIP \#266&\small Project&\small Rejec.&\small Numbers are Commands
\\\small TIP \#267&\small Project&\small Final&\small Allow 'exec' to Ignore Stderr
\\\small TIP \#268&\small Project&\small Final&\small Enhance 'package' Version Handling
\\\small TIP \#269&\small Project&\small Final&\small Add 'string is list' to the 'string is' Subcommand
\\\small TIP \#270&\small Project&\small Final&\small Utility C Routines for String Formatting
\\\small TIP \#271&\small Project&\small Draft&\small Windows-Style Open and Save File Dialog on Unix
\\\small TIP \#272&\small Project&\small Final&\small String and List Reversal Operations
\\\small TIP \#273&\small Project&\small Rejec.&\small Add Tcl\_Expr... Support to Tcl\_Get... Functions
\\\small TIP \#274&\small Project&\small Final&\small Right-Associativity for the Exponentiation Operator
\\\small TIP \#275&\small Project&\small Final&\small Support Unsigned Values in binary Command
\\\small TIP \#276&\small Project&\small Draft&\small Specify and Unify Variable Linking Commands
\\\small TIP \#277&\small Project&\small Draft&\small Create Namespaces as Needed
\\\small TIP \#278&\small Project&\small Draft&\small Fix Variable Name Resolution Quirks
\\\small TIP \#279&\small Project&\small Draft&\small Adding an Extensible Object System to the Core
\\\small TIP \#280&\small Project&\small Final&\small Add Full Stack Trace Capability With Location Introspection
\\\small TIP \#281&\small Project&\small Draft&\small Improvements in System Error Handling
\\\small TIP \#282&\small Project&\small Draft&\small Enhanced Expression Syntax
\\\small TIP \#283&\small Project&\small Draft&\small Modify Ensemble Command Resolution Behaviour
\\\small TIP \#284&\small Project&\small Draft&\small New 'invoke' and 'namespace invoke' Commands
\\\small TIP \#285&\small Project&\small Final&\small Script Cancellation with [interp cancel] and Tcl\_CancelEval
\\\small TIP \#286&\small Project&\small Final&\small Add 'xposition' Command to Menu Widgets
\\\small TIP \#287&\small Project&\small Final&\small Add a Commands for Determining Size of Buffered Data
\\\small TIP \#288&\small Project&\small Draft&\small Allow ``args'' Anywhere in Procedure Formal Arguments
\\\small TIP \#289&\small Project&\small Rejec.&\small Revision of [lrepeat] Argument Order
\\\small TIP \#290&\small Project&\small Draft&\small Registration of Custom Error Handler Scripts
\\\small TIP \#291&\small Project&\small Final&\small Add the 'platform' Package to Tcl
\\\small TIP \#292&\small Project&\small Draft&\small Allow Unquoted Strings in Expressions
\\\small TIP \#293&\small Project&\small Final&\small Argument Expansion with Leading \{*\}
\\\small TIP \#294&\small Project&\small Rejec.&\small The ``entier'' Function: It's Spelt ``entire''
\\\small TIP \#295&\small Project&\small Draft&\small Enhance Arguments to lrange
\\\small TIP \#296&\small Project&\small Draft&\small Enhanced Syntax for Pair-Wise Indices
\\\small TIP \#297&\small Project&\small Draft&\small Integer Type Introspection and Conversion
\\\small TIP \#298&\small Project&\small Final&\small Revise Shared Value Rules for Tcl\_GetBignumAndClearObj
\\\small TIP \#299&\small Project&\small Final&\small Add isqrt() Math Function
\\\small TIP \#300&\small Project&\small Final&\small Examine Glyph Substitution in the 'font actual' Command
\\\small TIP \#301&\small Project&\small Withd.&\small Split Bidirectional Channels For Half-Close
\\\small TIP \#302&\small Project&\small Draft&\small Fix ``after'''s Sensitivity To Adjustments Of System Clock
\\\small TIP \#303&\small Project&\small Draft&\small Enhance 'llength' Command to Support Nested Lists
\\\small TIP \#304&\small Project&\small Final&\small A Standalone [chan pipe] Primitive for Advanced Child IPC
\\\small TIP \#305&\small Project&\small Withd.&\small ANSI Escape Sequence Support for Windows's Console Channel Driver
\\\small TIP \#306&\small Project&\small Rejec.&\small Auto-Naming Widgets
\\\small TIP \#307&\small Project&\small Final&\small Make TclTransferResult() Public
\\\small TIP \#308&\small Inform.&\small Final&\small Tcl Database Connectivity (TDBC)
\\\small TIP \#309&\small Project&\small Draft&\small Expose the Expression Parsing
\\\small TIP \#310&\small Project&\small Rejec.&\small Add a New Pseudo-Random Number Generator
\\\small TIP \#311&\small Inform.&\small Draft&\small Tcl/Tk 8.6 Release Calendar
\\\small TIP \#312&\small Project&\small Draft&\small Add More Link Types
\\\small TIP \#313&\small Project&\small Final&\small Inexact Searching in Sorted List
\\\small TIP \#314&\small Project&\small Final&\small Ensembles with Parameters
\\\small TIP \#315&\small Project&\small Final&\small Add pathSeparator to tcl\_platform Array
\\\small TIP \#316&\small Project&\small Final&\small Portable Access Functions for Stat Buffers
\\\small TIP \#317&\small Project&\small Final&\small Extend binary Ensemble with Binary Encodings
\\\small TIP \#318&\small Project&\small Final&\small Extend Default Whitespace in 'string trim' Beyond ASCII
\\\small TIP \#319&\small Project&\small Draft&\small Implement Backwards Compatibility for ttk Themed Widgets in tk Widgets
\\\small TIP \#320&\small Project&\small Final&\small Improved Variable Handling in the Core Object System
\\\small TIP \#321&\small Project&\small Final&\small Add a [tk busy] Command
\\\small TIP \#322&\small Project&\small Final&\small Publish the NRE API
\\\small TIP \#323&\small Project&\small Final&\small Do Nothing Gracefully
\\\small TIP \#324&\small Project&\small Final&\small A Standard Dialog For Font Selection
\\\small TIP \#325&\small Project&\small Draft&\small System Tray Access
\\\small TIP \#326&\small Project&\small Final&\small Add -stride Option to lsort
\\\small TIP \#327&\small Project&\small Final&\small Proper Tailcalls
\\\small TIP \#328&\small Project&\small Final&\small Coroutines
\\\small TIP \#329&\small Project&\small Final&\small Try/Catch/Finally syntax
\\\small TIP \#330&\small Project&\small Final&\small Eliminate interp-\tiprangle{}result from the Public Headers
\\\small TIP \#331&\small Project&\small Final&\small Allow [lset] to Extend Lists
\\\small TIP \#332&\small Project&\small Final&\small Half-Close for Bidirectional Channels
\\\small TIP \#333&\small Project&\small Draft&\small New Variable and Namespace Resolving Interface
\\\small TIP \#334&\small Project&\small Withd.&\small Make 'lrepeat' Accept Zero as a Count
\\\small TIP \#335&\small Project&\small Final&\small An API for Detecting Active Interpreters
\\\small TIP \#336&\small Project&\small Final&\small Supported Access To interp-\tiprangle{}errorline
\\\small TIP \#337&\small Project&\small Final&\small Make TclBackgroundException() Public
\\\small TIP \#338&\small Project&\small Final&\small Embedder Access to Startup Scripts of *\_Main()
\\\small TIP \#339&\small Project&\small Rejec.&\small Case-Insensitive Package Names
\\\small TIP \#340&\small Project&\small Withd.&\small Const Qualification of Tcl\_SetResult's Argument
\\\small TIP \#341&\small Project&\small Final&\small Multiple 'dict filter' Patterns
\\\small TIP \#342&\small Project&\small Draft&\small Dict Get With Default
\\\small TIP \#343&\small Project&\small Final&\small A Binary Specifier for [format/scan]
\\\small TIP \#344&\small Project&\small Draft&\small Bring TCP\_NODELAY and SO\_KEEPALIVE to socket options
\\\small TIP \#345&\small Project&\small Draft&\small Kill the 'identity' Encoding
\\\small TIP \#346&\small Project&\small Draft&\small Error on Failed String Encodings
\\\small TIP \#347&\small Project&\small Withd.&\small Align 'string is ...' to Type-Conversion Functions in 'expr'
\\\small TIP \#348&\small Project&\small Final&\small Substituted 'errorstack' / 'traceback'
\\\small TIP \#349&\small Project&\small Draft&\small New ``-cargo'' option for every Tk widget
\\\small TIP \#350&\small Inform.&\small Draft&\small Tcl Database Connectivity --- Corrigenda
\\\small TIP \#351&\small Project&\small Draft&\small Add Striding Support to lsearch
\\\small TIP \#352&\small Inform.&\small Draft&\small Tcl Style Guide
\\\small TIP \#353&\small Project&\small Final&\small NR-enabled Expressions for Extensions
\\\small TIP \#354&\small Project&\small Final&\small Minor Production-Driven TclOO Revisions
\\\small TIP \#355&\small Project&\small Draft&\small Stop Fast Recycling of Channel Names on Unix
\\\small TIP \#356&\small Project&\small Final&\small NR-enabled Substitutions for Extensions
\\\small TIP \#357&\small Project&\small Final&\small Export TclLoadFile
\\\small TIP \#358&\small Project&\small Draft&\small Suppress Empty List Element Generation from the Split Command
\\\small TIP \#359&\small Project&\small Final&\small Extended Window Manager Hint Support
\\\small TIP \#360&\small Project&\small Final&\small Modernize X11 Menus
\\\small TIP \#361&\small Project&\small Draft&\small Releasing Channel Buffers
\\\small TIP \#362&\small Project&\small Final&\small Simple 32 and 64 bit Registry Support
\\\small TIP \#363&\small Project&\small Draft&\small Vector Math in the Tcl Core
\\\small TIP \#364&\small Project&\small Final&\small Threading Support: Configuration and Package
\\\small TIP \#365&\small Project&\small Draft&\small Add Python Compatibility Mode
\\\small TIP \#366&\small Project&\small Draft&\small Variable Sized Indicators for Menubuttons
\\\small TIP \#367&\small Project&\small Draft&\small A Command to Remove Elements from a List
\\\small TIP \#368&\small Project&\small Withd.&\small Listbox Justification Option
\\\small TIP \#369&\small Project&\small Draft&\small Widget cargo command
\\\small TIP \#370&\small Project&\small Draft&\small Extend Tk's selection with a -time option
\\\small TIP \#371&\small Project&\small Draft&\small Improvements for the dict command
\\\small TIP \#372&\small Project&\small Draft&\small Multi-argument Yield for Coroutines
\\\small TIP \#373&\small Project&\small Withd.&\small Improved Yielding Support for Coroutines
\\\small TIP \#374&\small Project&\small Draft&\small Stackless Vwait
\\\small TIP \#375&\small Project&\small Draft&\small Symmetric Coroutines and Yieldto
\\\small TIP \#376&\small Project&\small Final&\small Bundle sqlite3 and tdbc::sqlite3 Packages
\\\small TIP \#377&\small Project&\small Withd.&\small Portably Determining the Number of Processors in the System
\\\small TIP \#378&\small Project&\small Final&\small Fixing the Performance of TIP 280
\\\small TIP \#379&\small Project&\small Draft&\small Add a Command for Delivering Events Without Tk
\\\small TIP \#380&\small Project&\small Final&\small TclOO Slots for Flexible Declarations
\\\small TIP \#381&\small Project&\small Final&\small Call Chain Introspection and Control
\\\small TIP \#382&\small Project&\small Final&\small Let tk\_getSaveFile ignore file overwrites
\\\small TIP \#383&\small Project&\small Draft&\small Injecting Code into Suspended Coroutines
\\\small TIP \#384&\small Project&\small Draft&\small Add File Alteration Monitoring to the Tcl Core
\\\small TIP \#385&\small Project&\small Draft&\small Functional Traces On Variables 
\\\small TIP \#386&\small Inform.&\small Draft&\small Relocation of Tcl/Tk Source Control Repositories
\\\small TIP \#387&\small Project&\small Withd.&\small Unified Yield Command Syntax
\\\small TIP \#388&\small Project&\small Final&\small Extending Unicode literals past the BMP
\\\small TIP \#389&\small Project&\small Draft&\small Full support for Unicode 8.0 and later
\\\small TIP \#390&\small Project&\small Draft&\small A Logging API for Tcl
\\\small TIP \#391&\small Project&\small Withd.&\small Support for UDP Sockets in Tcl
\\\small TIP \#392&\small Project&\small Draft&\small Allow Bignums to be Disabled at Runtime on a Per-Interp Basis
\\\small TIP \#393&\small Project&\small Draft&\small Add -command Option to lsearch
\\\small TIP \#394&\small Project&\small Draft&\small Platform-Independent Handling of Contemporary Mice
\\\small TIP \#395&\small Project&\small Final&\small New 'string is entier' Command
\\\small TIP \#396&\small Project&\small Final&\small Symmetric Coroutines, Multiple Args, and yieldto
\\\small TIP \#397&\small Project&\small Final&\small Extensible Object Copying
\\\small TIP \#398&\small Project&\small Final&\small Quickly Exit with Non-Blocking Blocked Channels
\\\small TIP \#399&\small Project&\small Accep.&\small Dynamic Locale Changing for msgcat
\\\small TIP \#400&\small Project&\small Final&\small Setting the Compression Dictionary and Other 'zlib' Updates
\\\small TIP \#401&\small Project&\small Draft&\small Comment Words with Leading \{\#\}
\\\small TIP \#402&\small Project&\small Draft&\small General Platform UNC Support
\\\small TIP \#403&\small Project&\small Final&\small Web Colors for Tk
\\\small TIP \#404&\small Project&\small Final&\small Let Message Catalogs get the Locale from their File Name
\\\small TIP \#405&\small Project&\small Final&\small Add Collecting Loops, the 'lmap' and 'dict map' Commands
\\\small TIP \#406&\small Project&\small Draft&\small ``C'' is for Cookie
\\\small TIP \#407&\small Inform.&\small Draft&\small The String Representation of Tcl Lists: the Gory Details
\\\small TIP \#408&\small Project&\small Draft&\small Allow Any Command for expr Functions
\\\small TIP \#409&\small Project&\small Draft&\small UDP in Tcl
\\\small TIP \#410&\small Project&\small Draft&\small Three Features of scan Adapted for binary scan/format
\\\small TIP \#411&\small Project&\small Draft&\small Improved Channel Introspection via ``chan info''
\\\small TIP \#412&\small Project&\small Final&\small Dynamic Locale Changing for msgcat with On-Demand File Load
\\\small TIP \#413&\small Project&\small Final&\small Unicode Support for 'string is space' and 'string trim'
\\\small TIP \#414&\small Project&\small Draft&\small Add (back) Tcl\_InitSubsystems as Public API
\\\small TIP \#415&\small Project&\small Draft&\small Enable Easy Creation of Circular Arc Segments
\\\small TIP \#416&\small Project&\small Final&\small New Options for 'load': -global and -lazy
\\\small TIP \#417&\small Project&\small Draft&\small Use Explicit Option Names for ``file tempfile''
\\\small TIP \#418&\small Project&\small Draft&\small Add [binary] Subcommands for In-Place Modification
\\\small TIP \#419&\small Project&\small Draft&\small A New Command for Binding to Tk Events
\\\small TIP \#420&\small Project&\small Draft&\small 'vexpr', a Vector Expression Command
\\\small TIP \#421&\small Project&\small Draft&\small A Command for Iterating Over Arrays
\\\small TIP \#422&\small Project&\small Draft&\small Don't Use stdarg.h/va\_list in Public API
\\\small TIP \#423&\small Project&\small Draft&\small Formatting Timestamps with Milliseconds
\\\small TIP \#424&\small Project&\small Draft&\small Improving [exec]
\\\small TIP \#425&\small Project&\small Draft&\small Internationalization of Default Panic Callback on Windows
\\\small TIP \#426&\small Project&\small Draft&\small Determining the ``Type'' of Commands
\\\small TIP \#427&\small Project&\small Final&\small Introspection of Asynchronous Socket Connection
\\\small TIP \#428&\small Project&\small Draft&\small Produce Error Dictionary from 'fconfigure -error'
\\\small TIP \#429&\small Project&\small Final&\small A 'string' Subcommand for Concatenation
\\\small TIP \#430&\small Project&\small Draft&\small Add basic ZIP archive support to Tcl
\\\small TIP \#431&\small Project&\small Draft&\small Add 'tempdir' Subcommand to 'file'
\\\small TIP \#432&\small Project&\small Final&\small Support for New Windows File Dialogs in Vista and Later
\\\small TIP \#433&\small Project&\small Final&\small Add \%M binding substitution
\\\small TIP \#434&\small Project&\small Draft&\small Specify Event Sources for 'vwait'
\\\small TIP \#435&\small Project&\small Rejec.&\small Safe Mutex Disposal API
\\\small TIP \#436&\small Project&\small Final&\small Improve TclOO isa Introspection
\\\small TIP \#437&\small Project&\small Final&\small Tk panedwindow options for proxy window
\\\small TIP \#438&\small Project&\small Final&\small Ensure Line Metrics are Up-to-Date
\\\small TIP \#439&\small Project&\small Draft&\small Semantic Versioning
\\\small TIP \#440&\small Project&\small Final&\small Add engine to tcl\_platform Array
\\\small TIP \#441&\small Project&\small Final&\small Add -justify Configuration Option to the listbox Widget
\\\small TIP \#442&\small Project&\small Final&\small Display text in progressbars
\\\small TIP \#443&\small Project&\small Final&\small More Tag Configuration Options for the Text Widget
\\\small TIP \#444&\small Project&\small Final&\small Add ``weekdays'' unit in clock add
\\\small TIP \#445&\small Project&\small Draft&\small Tcl\_ObjType Utility Routines
\\\small TIP \#446&\small Project&\small Final&\small Introspect Undo/Redo Stack Depths
\\\small TIP \#447&\small Project&\small Final&\small Execution Time Verbosity Levels in tcltest::configure
\\\small TIP \#448&\small Project&\small Draft&\small Update Tcl\_SetNotifier to Reinitialize Event Loop
\\\small TIP \#449&\small Project&\small Final&\small [text] undo/redo to Return Range of Characters
\\\small TIP \#450&\small Project&\small Draft&\small Add [binary] subcommand ``set'' for in-place modification
\\\small TIP \#451&\small Project&\small Draft&\small Modify [update] to Give Full Script Access to Tcl\_DoOneEvent
\\\small TIP \#452&\small Project&\small Draft&\small Add ``stubs'' Package to or Along Side of TclTest
\\\small TIP \#453&\small Project&\small Draft&\small Tcl Based Automation for tcl/pkgs
\\\small TIP \#454&\small Project&\small Draft&\small Automatically Resize Frames After Last Child Removed
\\\small TIP \#455&\small Project&\small Draft&\small Extensions to [vwait]: Variable Sets and Scripted Access to Tcl\_DoOneEvent
\\\small TIP \#456&\small Project&\small Final&\small Extend the C API to Support Passing Options to TCP Server Creation
\\\small TIP \#457&\small Project&\small Draft&\small Add Support for Named Arguments
\\\small TIP \#458&\small Project&\small Final&\small Add Support for epoll() and kqueue() in the Notifier
\\\small TIP \#459&\small Project&\small Draft&\small Tcl Package Introspection Improvements
\\\small TIP \#460&\small Project&\small Draft&\small An Alternative to Upvar
\\\small TIP \#461&\small Project&\small Draft&\small Separate Numeric and String Comparison Operators
\\\small TIP \#462&\small Project&\small Draft&\small Add New [info ps] Ensemble for Subprocess Management
\\\small TIP \#463&\small Project&\small Final&\small Command-Driven Substitutions for regsub
\\\small TIP \#464&\small Project&\small Final&\small Support for Multimedia Keys on Windows
\\\small TIP \#465&\small Project&\small Draft&\small Change Rule 8 of the Dodekalogue to Cut Some Corner Cases
\\\small TIP \#466&\small Project&\small Draft&\small Revised Implementation of the Text Widget
\\\small TIP \#467&\small Process&\small Draft&\small Move TIP Collection to Fossil
\\\small TIP \#468&\small Project&\small Draft&\small Support Passing TCP listen Backlog Size Option to TCP Socket Creation
\\\small TIP \#469&\small Project&\small Draft&\small A Callback for Channel-Exception Conditions
\\\small TIP \#470&\small Project&\small Final&\small Reliable Access to OO Definition Context Object
\\\small TIP \#471&\small Project&\small Draft&\small Add [info linkedname] Introspection Command
\\\small TIP \#472&\small Project&\small Accep.&\small Add Support for 0d Radix Prefix to Integer Literals
\\\small TIP \#473&\small Project&\small Final&\small Allow a Defined Target Namespace in oo::copy
\\\small TIP \#10000&\small Inform.&\small Draft&\small Dummy Proposal for Testing Editing Interfaces
\\\end{supertabular}\end{center}

TIP \#0: 
Tcl Core Team Basic Rules

TIP \#1: 
TIP Index

TIP \#2: (\emph{Draft})
TIP Guidelines

TIP \#3: 
TIP Format

TIP \#4: (\emph{Draft})
Tcl Release and Distribution Philosophy

TIP \#5: 
Make TkClassProcs and TkSetClassProcs Public and Extensible

TIP \#6: (\emph{Rejected})
Include [Incr Tcl] in the Core Tcl distribution

TIP \#7: 
Increased resolution for TclpGetTime on Windows

TIP \#8: 
Add Winico support to the wm command on windows

TIP \#9: (\emph{Withdrawn})
Tk Standard Library

TIP \#10: 
Tcl I/O Enhancement: Thread-Aware Channels

TIP \#11: 
Tk Menubutton Enhancement: -compound option for menubutton

TIP \#12: (\emph{Draft})
The ``Batteries Included'' Distribution

TIP \#13: 
Web Service for Drafting and Archiving TIPs

TIP \#14: 
Access to Tk Photo Image Transparency

TIP \#15: 
Functions to List and Detail Math Functions

TIP \#16: 
Tcl Functional Areas for Maintainer Assignments

TIP \#17: 
Redo Tcl's filesystem

TIP \#18: 
Add Labels to Frames

TIP \#19: 
Add a Text Changed Flag to Tk's Text Widget

TIP \#20: 
Add C Locale-Exact CType Functions

TIP \#21: 
Asymmetric Padding in the Pack and Grid Geometry Managers

TIP \#22: 
Multiple Index Arguments to lindex

TIP \#23: 
Tk Toolkit Functional Areas for Maintainer Assignments

TIP \#24: (\emph{Draft})
Tcl Maintainer Assignments

TIP \#25: (\emph{Withdrawn})
Native tk\_messageBox  on Macintosh

TIP \#26: 
Enhancements for the Tk Text Widget

TIP \#27: 
CONST Qualification on Pointers in Tcl API's

TIP \#28: (\emph{Draft})
How to be a good maintainer for Tcl/Tk

TIP \#29: (\emph{Rejected})
Allow array syntax for Tcl lists

TIP \#30: (\emph{Draft})
Tk Toolkit Maintainer Assignments

TIP \#31: (\emph{Draft})
CVS tags in the Tcl and Tk repositories

TIP \#32: 
Add Tcl\_Obj-enabled counterpart to Tcl\_CreateTrace

TIP \#33: 
Add 'lset' Command to Assign to List Elements.

TIP \#34: (\emph{Withdrawn})
Modernize TEA Build System

TIP \#35: 
Enhanced Support for Serial Communications

TIP \#36: 
Library Access to 'Subst' Functionality

TIP \#37: 
Uniform Rows and Columns in Grid

TIP \#38: (\emph{Withdrawn})
Add Support for Default Bindtags

TIP \#39: (\emph{Withdrawn})
Add New Standard Tk Option: -component

TIP \#40: (\emph{Withdrawn})
Documentation Generator for Tcl Scripts

TIP \#41: 
Paned Window Tk Widget

TIP \#42: (\emph{Withdrawn})
Add New Standard Tk Option: -clientdata

TIP \#43: (\emph{Draft})
How to be a TIP Editor

TIP \#44: 
Move Tk's Private Commands and Variables into ::tk Namespace

TIP \#45: 
Empty index lists for [lindex] and [lset]

TIP \#46: (\emph{Withdrawn})
Consistent Overlap Behavior of Area-Defining Canvas Items 

TIP \#47: 
Modifying Tk to Allow Writing X Window managers

TIP \#48: 
Tk Widget Styling Support

TIP \#49: 
I/O Subsystem: Add API Tcl\_OutputBuffered(chan)

TIP \#50: 
Bundle [incr Tcl] with the Core Tcl distribution

TIP \#51: (\emph{Withdrawn})
Native Menubutton on Macintosh

TIP \#52: (\emph{Withdrawn})
Hierarchical Namespace Lookup of Commands and Variables

TIP \#53: (\emph{Withdrawn})
Addition of 'assert' Command

TIP \#54: (\emph{Withdrawn})
Using PURLs to Unite the Tcl Webspace

TIP \#55: (\emph{Draft})
Package Format for Tcl Extensions

TIP \#56: 
Standardize Call Interface to Tcl\_Eval* Functions

TIP \#57: 
Move TclX's [lassign] into the Tcl Core

TIP \#58: (\emph{Rejected})
Extend [set] to Assign Multiple Values to Multiple Variables

TIP \#59: 
Embed Build Information in Tcl Binary Library

TIP \#60: (\emph{Rejected})
EXTERN Macro Change to Support a Wider Set of Attributes

TIP \#61: 
Make TK\_NO\_SECURITY Run-Time Switchable

TIP \#62: 
Add Support for Command Tracing

TIP \#63: 
Add -compound Option to Menu Entries

TIP \#64: 
Improvements to Windows Font Handling

TIP \#65: (\emph{Rejected})
Enhanced [info args]

TIP \#66: (\emph{Draft})
Stand-alone and Embedded Tcl/Tk Applications

TIP \#67: (\emph{Withdrawn})
Allow Subclassing of tk\_getOpenFile, tk\_getSaveFile on UNIX

TIP \#68: 
Dynamic Trace Result Handling

TIP \#69: (\emph{Draft})
Improvements for the Tcl Hash Table

TIP \#70: (\emph{Withdrawn})
A Relational Switch Control Structure

TIP \#71: (\emph{Withdrawn})
Tk Bitmap Image Improvements

TIP \#72: 
64-Bit Value Support for Tcl on 32-Bit Platforms

TIP \#73: 
Export Tcl\_GetTime in the Public API

TIP \#74: 
wm stackorder command

TIP \#75: 
Refer to Sub-RegExps Inside 'switch -regexp' Bodies

TIP \#76: 
Make 'regsub' Return a String

TIP \#77: (\emph{Withdrawn})
Support for Nested Paired Item Lists

TIP \#78: (\emph{Draft})
TEA 2.0 Definitions

TIP \#79: 
Add Deletion Callback to Tcl\_CreateObjTrace

TIP \#80: 
Additional Options for 'lsearch'

TIP \#81: (\emph{Withdrawn})
[incr Tcl] Functional Areas for Maintainer Assignments

TIP \#82: 
Add -offrelief Option to Checkbutton and Radiobutton

TIP \#83: (\emph{Withdrawn})
Augment Tcl\_EvalFile with Tcl\_EvalChannel and Tcl\_EvalUrl

TIP \#84: 
Add control for mouse movement filtering

TIP \#85: 
Custom Comparisons in Tcltest

TIP \#86: (\emph{Draft})
Improved Debugger Support

TIP \#87: 
Allow Tcl Access to the Recursion Limit

TIP \#88: (\emph{Rejected})
Extend Tcl Process Id Control via 'pid'

TIP \#89: (\emph{Withdrawn})
Try/Catch Exception Handling in the Core

TIP \#90: 
Enable [return -code] in Control Structure Procs

TIP \#91: 
Backward Compatibility for Channel Types with 32-bit SeekProcs

TIP \#92: (\emph{Withdrawn})
Move Package Load Decisions to Application Developer

TIP \#93: 
Get/Delete Enhancement for the Tk Text Widget

TIP \#94: 
Add Listbox -activestyle Option

TIP \#95: 
Add [wm attributes] Command

TIP \#96: 
Add [tk caret] Command and Tk\_SetCaretPos API

TIP \#97: 
Moving Vertices of Canvas Items

TIP \#98: 
Adding Transparency Compositing Rules to Photo Images

TIP \#99: 
Add 'file link' to Tcl

TIP \#100: 
Add Support for Unloading Dynamic Libraries Loaded with [load]

TIP \#101: 
Export Tcltest Configuration

TIP \#102: 
Change [trace list] to [trace info]

TIP \#103: (\emph{Rejected})
Argument Expansion Command

TIP \#104: 
Generalization of the Tk Undo Subsystem

TIP \#105: (\emph{Withdrawn})
Add Prefix Matching for Switch

TIP \#106: 
Add Encoding Abilities to the [dde] Command

TIP \#107: 
Fix the 2-second ``raise delay'' in Tk

TIP \#108: 
Summary of Changes to Generic Tcl/Tk Code to Enable Mac OS X Port

TIP \#109: 
New Look for Checkbutton and Radiobutton on Unix

TIP \#110: 
Add a Tristate Mode to the Checkbutton and Radiobutton

TIP \#111: 
Dictionary Values and Manipulators

TIP \#112: 
Ensembles are Namespaces are Commands

TIP \#113: 
Multi-Line Searches in the Text Widget

TIP \#114: (\emph{Draft})
Eliminate Octal Parsing of Leading Zero Integer Strings

TIP \#115: (\emph{Draft})
Making Tcl Truly 64-Bit Ready

TIP \#116: 
More Safety for Large Images

TIP \#117: (\emph{Withdrawn})
Object Type Introspection

TIP \#118: 
Enhance [file attributes] and [file copy] on Mac OS X \& BSD

TIP \#119: 
Angled Text on a Canvas

TIP \#120: 
Restricted DDE Services

TIP \#121: 
Controlled Application Shutdown via Tcl\_Exit

TIP \#122: (\emph{Rejected})
Use tcl\_\{non,\}wordchars Throughout Tcl/Tk

TIP \#123: 
Adding an Exponentiation Operator to the [expr] Command

TIP \#124: 
High-Resolution Absolute Time Values From [clock]

TIP \#125: 
Converting between Frame and Toplevel Windows

TIP \#126: (\emph{Draft})
Rich Strings for Representation Persistence

TIP \#127: 
Add an -index Option to [lsearch]

TIP \#128: (\emph{Rejected})
Ability to Install a Custom Memory Allocator

TIP \#129: 
New Format Codes for the [binary] Command

TIP \#130: 
Unique DDE server names.

TIP \#131: (\emph{Draft})
Read My Mind and Do What I Mean

TIP \#132: 
Revised Floating-Point Conversions in Tcl

TIP \#133: (\emph{Draft})
Extending [expr] Operators

TIP \#134: (\emph{Withdrawn})
Subsystem Per-Thread Data Interfaces

TIP \#135: 
Change 'dde servername -exact' Option to -force

TIP \#136: 
Large List Initialisation

TIP \#137: 
Specifying Script Encodings for [source] and tclsh

TIP \#138: 
New TCL\_HASH\_KEY\_SYSTEM\_HASH option for Tcl hash tables

TIP \#139: 
Publish Part of Tcl's Namespace API

TIP \#140: 
Tracing Namespace Modifications

TIP \#141: 
Multiple Initial-Files in [tk\_getOpenFile]

TIP \#142: (\emph{Withdrawn})
Search Path Variable to Lookup Command Names in Namespaces

TIP \#143: 
An Interpreter Resource Limiting Framework

TIP \#144: (\emph{Withdrawn})
Argument Expansion Syntax

TIP \#145: 
Enhanced Tk Font Handling

TIP \#146: 
Add Overall Anchoring to the Grid Geometry Manager

TIP \#147: 
Make Grid's Column/Row Configure Easier

TIP \#148: 
Correct [list]-Quoting of the '\#' Character

TIP \#149: (\emph{Withdrawn})
Allow ``enabled'' as Synonym for ``normal'' in -state Option

TIP \#150: 
Implement the Tk send Command for Windows

TIP \#151: 
Remove -e: Command Line Option from tclsh and wish

TIP \#152: 
New -detail Option for tk\_messageBox

TIP \#153: 
Enhancing the [winfo toplevel] Command

TIP \#154: (\emph{Draft})
Add Named Colors to Tk

TIP \#155: 
Fix Some of the Text Widget's Limitations

TIP \#156: 
Language-Neutral Root Locale for Msgcat

TIP \#157: 
Argument Expansion with Leading \{expand\}

TIP \#158: 
Distinguish the two 'Enter' keys on Windows

TIP \#159: 
Extending Tk 'wm' Command to Support Coloured Icons

TIP \#160: (\emph{Draft})
Improvements to Terminal and Serial Channel Handling

TIP \#161: (\emph{Draft})
Change Default for Menu's -tearoff Option to False

TIP \#162: 
IPv6 Sockets for Tcl

TIP \#163: 
A [dict merge] Subcommand

TIP \#164: (\emph{Draft})
Add Rotate Subcommand to the Canvas Widget

TIP \#165: 
A User-Data Field for Virtual Events

TIP \#166: (\emph{Draft})
Reading and Writing the Photo Image Alpha Channel

TIP \#167: (\emph{Draft})
Add a New Option for Context Help for Windows

TIP \#168: 
Cubic Bezier Curves on the Canvas

TIP \#169: 
Add Peer Text Widgets

TIP \#170: (\emph{Draft})
Better Support for Nested Lists

TIP \#171: 
Change Default \tiplangle{}MouseWheel\tiprangle{} Bindings Behavior

TIP \#172: (\emph{Withdrawn})
Improve UNIX Tk Look and Feel

TIP \#173: 
Internationalisation and Refactoring of the 'clock' Command

TIP \#174: 
Math Operators as Commands

TIP \#175: (\emph{Withdrawn})
Add an -async Option to [open]

TIP \#176: 
Add String Index Values

TIP \#177: 
Add -stretch Option to panedwindow Widget

TIP \#178: (\emph{Draft})
[info pid] and [info tid] Subcommands

TIP \#179: 
Add -hide Option to panedwindow Widget

TIP \#180: (\emph{Draft})
Add a Megawidget Support Core Package

TIP \#181: 
Add a [namespace unknown] Command

TIP \#182: 
Add [expr bool] Math Function

TIP \#183: 
Add a Binary Flag to [open]

TIP \#184: 
Avoid Creating Unusable Variables

TIP \#185: (\emph{Rejected})
Null Handling

TIP \#186: (\emph{Draft})
Expose the Type and Modified-State of Widget Options

TIP \#187: (\emph{Rejected})
Procedures as Values

TIP \#188: 
Add 'string is wideinteger' to the 'string is' Subcommand

TIP \#189: 
Tcl Modules

TIP \#190: (\emph{Draft})
Implementation Choices for Tcl Modules

TIP \#191: (\emph{Draft})
Managing Tcl Packages and Modules in a Multi-Version Environment

TIP \#192: (\emph{Draft})
Lazy Lists

TIP \#193: (\emph{Draft})
Simple Syntax Help System

TIP \#194: 
Procedures as Values via \textbf{apply}

TIP \#195: 
A Unique Prefix Handling Command

TIP \#196: (\emph{Withdrawn})
Tcl Commands as Values

TIP \#197: 
Unfocussed Text Widget Cursor Control

TIP \#198: (\emph{Draft})
Image Command XPM Extension

TIP \#199: (\emph{Rejected})
Specification of Alternatives to .wishrc/.tclshrc

TIP \#200: (\emph{Rejected})
Listing the Values in an Array

TIP \#201: 
Add 'in' Operator to [expr]

TIP \#202: 
Add 2\tiprangle{}@1 Special Case to [open] and [exec]

TIP \#203: (\emph{Withdrawn})
Create tclConfig.sh-Equivalent in Tcl

TIP \#204: 
Virtual Events for Keyboard Traversal

TIP \#205: 
Use pkgconfig Database to Register Xft Support

TIP \#206: (\emph{Rejected})
Add an [ftruncate] Command

TIP \#207: 
Add a -namespace Option to [interp invokehidden]

TIP \#208: 
Add a 'chan' Command

TIP \#209: 
Add [clock milliseconds], and [clock microseconds]

TIP \#210: 
Add 'tempfile' Subcommand to 'file'

TIP \#211: (\emph{Withdrawn})
Add Full Stack Trace Capability

TIP \#212: 
Temporarily Opening out a Dictionary

TIP \#213: (\emph{Withdrawn})
A Standard Dialog for Font Selection

TIP \#214: (\emph{Withdrawn})
Add New Object Introspection Command

TIP \#215: 
Make [incr] Auto-Initialize Undefined Variables

TIP \#216: (\emph{Draft})
Handling Command-Line Options in Tclsh and Wish

TIP \#217: 
Getting Sorted Indices out of Lsort

TIP \#218: 
Tcl Channel Driver Thread State Actions

TIP \#219: 
Tcl Channel Reflection API

TIP \#220: (\emph{Draft})
Escalate Privileges in VFS Close Callback

TIP \#221: 
Allow Background Error Handlers to Accept Return Options

TIP \#222: 
Add [wm attributes -alpha] Attribute on Windows

TIP \#223: 
Full-Screen Toplevel Support for Tk

TIP \#224: (\emph{Draft})
Add New [array] Subcommands 'incr' and 'value'

TIP \#225: (\emph{Draft})
Arithmetic Series with Optimized Space Complexity

TIP \#226: 
Interface to Save and Restore Interpreter State

TIP \#227: 
Interface to Get and Set the Return Options of an Interpreter

TIP \#228: (\emph{Draft})
Tcl Filesystem Reflection API

TIP \#229: 
Scripted Control of Name Resolution in Namespaces

TIP \#230: 
Tcl Channel Transformation Reflection API

TIP \#231: 
Support for [wm attributes] on X11

TIP \#232: 
Creating New Math Functions for the 'expr' Command

TIP \#233: 
Virtualization of Tcl's Sense of Time

TIP \#234: 
Add Support For Zlib Compression

TIP \#235: 
Exposing a C API for Ensembles

TIP \#236: 
Absolute Positioning of Canvas Items

TIP \#237: 
Arbitrary-Precision Integers for Tcl

TIP \#238: (\emph{Draft})
Fire Event when Widget Created

TIP \#239: (\emph{Draft})
Enhance the 'load' Command

TIP \#240: (\emph{Draft})
An Ensemble Command to Manage Processes

TIP \#241: 
Case-Insensitive Switches and List Searching and Sorting

TIP \#242: 
Preselect Filter on tk\_get*File Dialogs

TIP \#243: (\emph{Draft})
Supply Find Dialog for the Text Widget

TIP \#244: 
PNG Photo Image Support for Tk

TIP \#245: 
Discover User Inactivity Time

TIP \#246: (\emph{Draft})
Unify Pattern Matching

TIP \#247: (\emph{Draft})
Tcl/Tk Engineering Manual

TIP \#248: 
Integrate Tile into Tk as Ttk

TIP \#249: (\emph{Draft})
Unification of Tcl's Parsing of Numbers

TIP \#250: 
Efficient Access to Namespace Variables

TIP \#251: (\emph{Rejected})
Enhance the 'list' Command

TIP \#252: (\emph{Rejected})
Add New 'string' Command Options

TIP \#253: (\emph{Draft})
Consolidate Package-Related Commands

TIP \#254: 
New Types for Tcl\_LinkVar

TIP \#255: 
Add 'min' and 'max' [expr] Functions

TIP \#256: 
Implement Tabular and Wordprocessor Style Tabbing

TIP \#257: 
Object Orientation for Tcl

TIP \#258: 
Enhanced Interface for Encodings

TIP \#259: (\emph{Draft})
Making 'exec' Optionally Binary Safe

TIP \#260: 
Add Underline Option to Canvas Text Items

TIP \#261: 
Return Imported Commands from [namespace import]

TIP \#262: (\emph{Draft})
Background Images for Frames

TIP \#263: (\emph{Draft})
Quantum Tcl

TIP \#264: 
Add Function to Retrieve the Interpreter of a Window

TIP \#265: 
A Convenient C-side Command Option Parser for Tcl

TIP \#266: (\emph{Rejected})
Numbers are Commands

TIP \#267: 
Allow 'exec' to Ignore Stderr

TIP \#268: 
Enhance 'package' Version Handling

TIP \#269: 
Add 'string is list' to the 'string is' Subcommand

TIP \#270: 
Utility C Routines for String Formatting

TIP \#271: (\emph{Draft})
Windows-Style Open and Save File Dialog on Unix

TIP \#272: 
String and List Reversal Operations

TIP \#273: (\emph{Rejected})
Add Tcl\_Expr... Support to Tcl\_Get... Functions

TIP \#274: 
Right-Associativity for the Exponentiation Operator

TIP \#275: 
Support Unsigned Values in binary Command

TIP \#276: (\emph{Draft})
Specify and Unify Variable Linking Commands

TIP \#277: (\emph{Draft})
Create Namespaces as Needed

TIP \#278: (\emph{Draft})
Fix Variable Name Resolution Quirks

TIP \#279: (\emph{Draft})
Adding an Extensible Object System to the Core

TIP \#280: 
Add Full Stack Trace Capability With Location Introspection

TIP \#281: (\emph{Draft})
Improvements in System Error Handling

TIP \#282: (\emph{Draft})
Enhanced Expression Syntax

TIP \#283: (\emph{Draft})
Modify Ensemble Command Resolution Behaviour

TIP \#284: (\emph{Draft})
New 'invoke' and 'namespace invoke' Commands

TIP \#285: 
Script Cancellation with [interp cancel] and Tcl\_CancelEval

TIP \#286: 
Add 'xposition' Command to Menu Widgets

TIP \#287: 
Add a Commands for Determining Size of Buffered Data

TIP \#288: (\emph{Draft})
Allow ``args'' Anywhere in Procedure Formal Arguments

TIP \#289: (\emph{Rejected})
Revision of [lrepeat] Argument Order

TIP \#290: (\emph{Draft})
Registration of Custom Error Handler Scripts

TIP \#291: 
Add the 'platform' Package to Tcl

TIP \#292: (\emph{Draft})
Allow Unquoted Strings in Expressions

TIP \#293: 
Argument Expansion with Leading \{*\}

TIP \#294: (\emph{Rejected})
The ``entier'' Function: It's Spelt ``entire''

TIP \#295: (\emph{Draft})
Enhance Arguments to lrange

TIP \#296: (\emph{Draft})
Enhanced Syntax for Pair-Wise Indices

TIP \#297: (\emph{Draft})
Integer Type Introspection and Conversion

TIP \#298: 
Revise Shared Value Rules for Tcl\_GetBignumAndClearObj

TIP \#299: 
Add isqrt() Math Function

TIP \#300: 
Examine Glyph Substitution in the 'font actual' Command

TIP \#301: (\emph{Withdrawn})
Split Bidirectional Channels For Half-Close

TIP \#302: (\emph{Draft})
Fix ``after'''s Sensitivity To Adjustments Of System Clock

TIP \#303: (\emph{Draft})
Enhance 'llength' Command to Support Nested Lists

TIP \#304: 
A Standalone [chan pipe] Primitive for Advanced Child IPC

TIP \#305: (\emph{Withdrawn})
ANSI Escape Sequence Support for Windows's Console Channel Driver

TIP \#306: (\emph{Rejected})
Auto-Naming Widgets

TIP \#307: 
Make TclTransferResult() Public

TIP \#308: 
Tcl Database Connectivity (TDBC)

TIP \#309: (\emph{Draft})
Expose the Expression Parsing

TIP \#310: (\emph{Rejected})
Add a New Pseudo-Random Number Generator

TIP \#311: (\emph{Draft})
Tcl/Tk 8.6 Release Calendar

TIP \#312: (\emph{Draft})
Add More Link Types

TIP \#313: 
Inexact Searching in Sorted List

TIP \#314: 
Ensembles with Parameters

TIP \#315: 
Add pathSeparator to tcl\_platform Array

TIP \#316: 
Portable Access Functions for Stat Buffers

TIP \#317: 
Extend binary Ensemble with Binary Encodings

TIP \#318: 
Extend Default Whitespace in 'string trim' Beyond ASCII

TIP \#319: (\emph{Draft})
Implement Backwards Compatibility for ttk Themed Widgets in tk Widgets

TIP \#320: 
Improved Variable Handling in the Core Object System

TIP \#321: 
Add a [tk busy] Command

TIP \#322: 
Publish the NRE API

TIP \#323: 
Do Nothing Gracefully

TIP \#324: 
A Standard Dialog For Font Selection

TIP \#325: (\emph{Draft})
System Tray Access

TIP \#326: 
Add -stride Option to lsort

TIP \#327: 
Proper Tailcalls

TIP \#328: 
Coroutines

TIP \#329: 
Try/Catch/Finally syntax

TIP \#330: 
Eliminate interp-\tiprangle{}result from the Public Headers

TIP \#331: 
Allow [lset] to Extend Lists

TIP \#332: 
Half-Close for Bidirectional Channels

TIP \#333: (\emph{Draft})
New Variable and Namespace Resolving Interface

TIP \#334: (\emph{Withdrawn})
Make 'lrepeat' Accept Zero as a Count

TIP \#335: 
An API for Detecting Active Interpreters

TIP \#336: 
Supported Access To interp-\tiprangle{}errorline

TIP \#337: 
Make TclBackgroundException() Public

TIP \#338: 
Embedder Access to Startup Scripts of *\_Main()

TIP \#339: (\emph{Rejected})
Case-Insensitive Package Names

TIP \#340: (\emph{Withdrawn})
Const Qualification of Tcl\_SetResult's Argument

TIP \#341: 
Multiple 'dict filter' Patterns

TIP \#342: (\emph{Draft})
Dict Get With Default

TIP \#343: 
A Binary Specifier for [format/scan]

TIP \#344: (\emph{Draft})
Bring TCP\_NODELAY and SO\_KEEPALIVE to socket options

TIP \#345: (\emph{Draft})
Kill the 'identity' Encoding

TIP \#346: (\emph{Draft})
Error on Failed String Encodings

TIP \#347: (\emph{Withdrawn})
Align 'string is ...' to Type-Conversion Functions in 'expr'

TIP \#348: 
Substituted 'errorstack' / 'traceback'

TIP \#349: (\emph{Draft})
New ``-cargo'' option for every Tk widget

TIP \#350: (\emph{Draft})
Tcl Database Connectivity --- Corrigenda

TIP \#351: (\emph{Draft})
Add Striding Support to lsearch

TIP \#352: (\emph{Draft})
Tcl Style Guide

TIP \#353: 
NR-enabled Expressions for Extensions

TIP \#354: 
Minor Production-Driven TclOO Revisions

TIP \#355: (\emph{Draft})
Stop Fast Recycling of Channel Names on Unix

TIP \#356: 
NR-enabled Substitutions for Extensions

TIP \#357: 
Export TclLoadFile

TIP \#358: (\emph{Draft})
Suppress Empty List Element Generation from the Split Command

TIP \#359: 
Extended Window Manager Hint Support

TIP \#360: 
Modernize X11 Menus

TIP \#361: (\emph{Draft})
Releasing Channel Buffers

TIP \#362: 
Simple 32 and 64 bit Registry Support

TIP \#363: (\emph{Draft})
Vector Math in the Tcl Core

TIP \#364: 
Threading Support: Configuration and Package

TIP \#365: (\emph{Draft})
Add Python Compatibility Mode

TIP \#366: (\emph{Draft})
Variable Sized Indicators for Menubuttons

TIP \#367: (\emph{Draft})
A Command to Remove Elements from a List

TIP \#368: (\emph{Withdrawn})
Listbox Justification Option

TIP \#369: (\emph{Draft})
Widget cargo command

TIP \#370: (\emph{Draft})
Extend Tk's selection with a -time option

TIP \#371: (\emph{Draft})
Improvements for the dict command

TIP \#372: (\emph{Draft})
Multi-argument Yield for Coroutines

TIP \#373: (\emph{Withdrawn})
Improved Yielding Support for Coroutines

TIP \#374: (\emph{Draft})
Stackless Vwait

TIP \#375: (\emph{Draft})
Symmetric Coroutines and Yieldto

TIP \#376: 
Bundle sqlite3 and tdbc::sqlite3 Packages

TIP \#377: (\emph{Withdrawn})
Portably Determining the Number of Processors in the System

TIP \#378: 
Fixing the Performance of TIP 280

TIP \#379: (\emph{Draft})
Add a Command for Delivering Events Without Tk

TIP \#380: 
TclOO Slots for Flexible Declarations

TIP \#381: 
Call Chain Introspection and Control

TIP \#382: 
Let tk\_getSaveFile ignore file overwrites

TIP \#383: (\emph{Draft})
Injecting Code into Suspended Coroutines

TIP \#384: (\emph{Draft})
Add File Alteration Monitoring to the Tcl Core

TIP \#385: (\emph{Draft})
Functional Traces On Variables 

TIP \#386: (\emph{Draft})
Relocation of Tcl/Tk Source Control Repositories

TIP \#387: (\emph{Withdrawn})
Unified Yield Command Syntax

TIP \#388: 
Extending Unicode literals past the BMP

TIP \#389: (\emph{Draft})
Full support for Unicode 8.0 and later

TIP \#390: (\emph{Draft})
A Logging API for Tcl

TIP \#391: (\emph{Withdrawn})
Support for UDP Sockets in Tcl

TIP \#392: (\emph{Draft})
Allow Bignums to be Disabled at Runtime on a Per-Interp Basis

TIP \#393: (\emph{Draft})
Add -command Option to lsearch

TIP \#394: (\emph{Draft})
Platform-Independent Handling of Contemporary Mice

TIP \#395: 
New 'string is entier' Command

TIP \#396: 
Symmetric Coroutines, Multiple Args, and yieldto

TIP \#397: 
Extensible Object Copying

TIP \#398: 
Quickly Exit with Non-Blocking Blocked Channels

TIP \#399: 
Dynamic Locale Changing for msgcat

TIP \#400: 
Setting the Compression Dictionary and Other 'zlib' Updates

TIP \#401: (\emph{Draft})
Comment Words with Leading \{\#\}

TIP \#402: (\emph{Draft})
General Platform UNC Support

TIP \#403: 
Web Colors for Tk

TIP \#404: 
Let Message Catalogs get the Locale from their File Name

TIP \#405: 
Add Collecting Loops, the 'lmap' and 'dict map' Commands

TIP \#406: (\emph{Draft})
``C'' is for Cookie

TIP \#407: (\emph{Draft})
The String Representation of Tcl Lists: the Gory Details

TIP \#408: (\emph{Draft})
Allow Any Command for expr Functions

TIP \#409: (\emph{Draft})
UDP in Tcl

TIP \#410: (\emph{Draft})
Three Features of scan Adapted for binary scan/format

TIP \#411: (\emph{Draft})
Improved Channel Introspection via ``chan info''

TIP \#412: 
Dynamic Locale Changing for msgcat with On-Demand File Load

TIP \#413: 
Unicode Support for 'string is space' and 'string trim'

TIP \#414: (\emph{Draft})
Add (back) Tcl\_InitSubsystems as Public API

TIP \#415: (\emph{Draft})
Enable Easy Creation of Circular Arc Segments

TIP \#416: 
New Options for 'load': -global and -lazy

TIP \#417: (\emph{Draft})
Use Explicit Option Names for ``file tempfile''

TIP \#418: (\emph{Draft})
Add [binary] Subcommands for In-Place Modification

TIP \#419: (\emph{Draft})
A New Command for Binding to Tk Events

TIP \#420: (\emph{Draft})
'vexpr', a Vector Expression Command

TIP \#421: (\emph{Draft})
A Command for Iterating Over Arrays

TIP \#422: (\emph{Draft})
Don't Use stdarg.h/va\_list in Public API

TIP \#423: (\emph{Draft})
Formatting Timestamps with Milliseconds

TIP \#424: (\emph{Draft})
Improving [exec]

TIP \#425: (\emph{Draft})
Internationalization of Default Panic Callback on Windows

TIP \#426: (\emph{Draft})
Determining the ``Type'' of Commands

TIP \#427: 
Introspection of Asynchronous Socket Connection

TIP \#428: (\emph{Draft})
Produce Error Dictionary from 'fconfigure -error'

TIP \#429: 
A 'string' Subcommand for Concatenation

TIP \#430: (\emph{Draft})
Add basic ZIP archive support to Tcl

TIP \#431: (\emph{Draft})
Add 'tempdir' Subcommand to 'file'

TIP \#432: 
Support for New Windows File Dialogs in Vista and Later

TIP \#433: 
Add \%M binding substitution

TIP \#434: (\emph{Draft})
Specify Event Sources for 'vwait'

TIP \#435: (\emph{Rejected})
Safe Mutex Disposal API

TIP \#436: 
Improve TclOO isa Introspection

TIP \#437: 
Tk panedwindow options for proxy window

TIP \#438: 
Ensure Line Metrics are Up-to-Date

TIP \#439: (\emph{Draft})
Semantic Versioning

TIP \#440: 
Add engine to tcl\_platform Array

TIP \#441: 
Add -justify Configuration Option to the listbox Widget

TIP \#442: 
Display text in progressbars

TIP \#443: 
More Tag Configuration Options for the Text Widget

TIP \#444: 
Add ``weekdays'' unit in clock add

TIP \#445: (\emph{Draft})
Tcl\_ObjType Utility Routines

TIP \#446: 
Introspect Undo/Redo Stack Depths

TIP \#447: 
Execution Time Verbosity Levels in tcltest::configure

TIP \#448: (\emph{Draft})
Update Tcl\_SetNotifier to Reinitialize Event Loop

TIP \#449: 
[text] undo/redo to Return Range of Characters

TIP \#450: (\emph{Draft})
Add [binary] subcommand ``set'' for in-place modification

TIP \#451: (\emph{Draft})
Modify [update] to Give Full Script Access to Tcl\_DoOneEvent

TIP \#452: (\emph{Draft})
Add ``stubs'' Package to or Along Side of TclTest

TIP \#453: (\emph{Draft})
Tcl Based Automation for tcl/pkgs

TIP \#454: (\emph{Draft})
Automatically Resize Frames After Last Child Removed

TIP \#455: (\emph{Draft})
Extensions to [vwait]: Variable Sets and Scripted Access to Tcl\_DoOneEvent

TIP \#456: 
Extend the C API to Support Passing Options to TCP Server Creation

TIP \#457: (\emph{Draft})
Add Support for Named Arguments

TIP \#458: 
Add Support for epoll() and kqueue() in the Notifier

TIP \#459: (\emph{Draft})
Tcl Package Introspection Improvements

TIP \#460: (\emph{Draft})
An Alternative to Upvar

TIP \#461: (\emph{Draft})
Separate Numeric and String Comparison Operators

TIP \#462: (\emph{Draft})
Add New [info ps] Ensemble for Subprocess Management

TIP \#463: 
Command-Driven Substitutions for regsub

TIP \#464: 
Support for Multimedia Keys on Windows

TIP \#465: (\emph{Draft})
Change Rule 8 of the Dodekalogue to Cut Some Corner Cases

TIP \#466: (\emph{Draft})
Revised Implementation of the Text Widget

TIP \#467: (\emph{Draft})
Move TIP Collection to Fossil

TIP \#468: (\emph{Draft})
Support Passing TCP listen Backlog Size Option to TCP Socket Creation

TIP \#469: (\emph{Draft})
A Callback for Channel-Exception Conditions

TIP \#470: 
Reliable Access to OO Definition Context Object

TIP \#471: (\emph{Draft})
Add [info linkedname] Introspection Command

TIP \#472: 
Add Support for 0d Radix Prefix to Integer Literals

TIP \#473: 
Allow a Defined Target Namespace in oo::copy

TIP \#10000: (\emph{Draft})
Dummy Proposal for Testing Editing Interfaces


\begin{center}\begin{supertabular}{|lp{3.3in}|}\hline

\textbf{TIP \#0}:&\textbf{Tcl Core Team Basic Rules}\\
Version:&\tipversion$Revision: 2.6 $\\
Author:&John Ousterhout \tipmail{ouster}{pacbell.net}
\\
State:&Final\\Type:&Process\\
Vote:&Done\\
Created:&11 December 2000\\
Posting History:&
\\
&\\Abstract:&
This TIP describes the mission, structure, and operating procedures of the Tcl Core Team (TCT). When in doubt about how the TCT works, consult this document as the final authority.
\\\hline\hline
\textbf{TIP \#1}:&\textbf{TIP Index}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&TIP Editor \tipmail{donal.fellows}{cs.man.ac.uk}
\\
State:&Active\\Type:&Informative\\
Vote:&No voting\\
Created:&14 September 2000\\
Posting History:&
\\
&\\Abstract:&
This TIP contains the index of all TIPs published over the lifetime of the TCT. It will be continually and automatically updated.
\\\hline\hline
\textbf{TIP \#2}:&\textbf{TIP Guidelines}\\
Version:&\tipversion$Revision: 1.38 $\\
Authors:&Andreas Kupries \tipmail{a.kupries}{westend.com}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\par Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Mo DeJong \tipmail{no}{spam.com}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Draft\\Type:&Process\\
Vote:&Pending\\
Created:&12 September 2000\\
Posting History:&
\\
&\\Abstract:&
This document describes and defines the editorial process a TCT document (TIP) has to go through before accepted as official.
\\\hline\hline
\textbf{TIP \#3}:&\textbf{TIP Format}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Andreas Kupries \tipmail{a.kupries}{westend.com}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Accepted\\Type:&Process\\
Vote:&Done\\
Created:&14 September 2000\\
Posting History:&
\\
&\\Abstract:&
This TIP is a companion document to the TIP Guidelines \cite{tip2} and describes the structure and formatting to use when writing a TIP.
\\\hline\hline
\textbf{TIP \#4}:&\textbf{Tcl Release and Distribution Philosophy}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&Brent Welch \tipmail{welch}{acm.org}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\par Larry W. Virden \tipmail{lvirden}{cas.org}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&26 October 2000\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
This document outlines how Tcl should be distributed, with particular reference to issues related to building a distribution with the \textit{batteries included} so that most people can have access to the useful extensions without having to chasing halfway across the 'net for them.
\\\hline\hline
\textbf{TIP \#5}:&\textbf{Make TkClassProcs and TkSetClassProcs Public and Extensible}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Eric Melski \tipmail{ericm}{ajubasolutions.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&17 October 2000\\
Posting History:&
\\
&\\Abstract:&
At certain critical moments in the lifetime of a Tk widget, Tk will invoke various callbacks on that widget. These callbacks enable the widget to do lots of interesting things, such as react to configuration changes for named fonts, or create and manage truly native widgets (such as the scrollbar widget on Windows platforms). The API for setting up these callbacks for a particular window are, as of Tk 8.3.2, private. This prohibits extension widget authors from fully utilizing this powerful system; those developers can either copy the private declarations into their own source code (leading to future maintenance hassles), or forego the system entirely, hampering their ability to make truly native and well-integrated widgets. This proposal offers an extensible means for making that API public.
\\\hline\hline
\textbf{TIP \#6}:&\textbf{Include [Incr Tcl] in the Core Tcl distribution}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Mark Harrison \tipmail{markh}{usai.asiainfo.com}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.4.0\\
Vote:&Done\\
Created:&16 October 2000\\
Posting History:&
\\
&\\Abstract:&
Include [Incr Tcl] in the Core Tcl distribution.
\\\hline\hline
\textbf{TIP \#7}:&\textbf{Increased resolution for TclpGetTime on Windows}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&26 October 2000\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
Tcl users on the Windows platform have long been at a disadvantage in attempting to do code timing studies, owing to the poor resolution of the Windows system clock. The \textit{time} command, the \textit{clock clicks} command, and all related functions are limited to a resolution of (typically) 10 milliseconds. This proposal offers a solution based on the Windows performance counter. It presents a means of disciplining this counter to the system clock so that \textit{TclpGetTime} (the underlying call that the above commands use) can return times to microsecond precision with accuracy in the tens of microseconds.
\\\hline\hline
\textbf{TIP \#8}:&\textbf{Add Winico support to the wm command on windows}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Vince Darley \tipmail{vince.darley}{eurobios.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4.0\\
Vote:&Done\\
Created:&06 November 2000\\
Posting History:&
\\
&\\Abstract:&
Add to \textit{wm} the ability to do the windows-titlebar-icon manipulation that the Winico extension currently provides, without the bugs noted in that extension.
\\\hline\hline
\textbf{TIP \#9}:&\textbf{Tk Standard Library}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Marty Backe \tipmail{mgbacke}{usa.net}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\par Jeff Hobbs \tipmail{jeffh}{activestate.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Pending\\
Created:&07 November 2000\\
Posting History:&
\\
&\\Abstract:&
A Tk standard library shall be bundled with the core Tcl/Tk distribution. The library will consist of general purpose widgets and composite widgets for use in constructing Tcl/Tk applications. The library of Tk components will be written in Tcl/Tk.
\\\hline\hline
\textbf{TIP \#10}:&\textbf{Tcl I/O Enhancement: Thread-Aware Channels}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Andreas Kupries \tipmail{a.kupries}{westend.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&08 November 2000\\
Posting History:&
\\
&\\Abstract:&
This TIP describes how to change the generic I/O layer in the Tcl core to make channels aware of the thread they are managed by.
\\\hline\hline
\textbf{TIP \#11}:&\textbf{Tk Menubutton Enhancement: -compound option for menubutton}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Todd Helfter \tipmail{tmh}{purdue.edu}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&16 November 2000\\
Posting History:&
\\
&\\Abstract:&
This TIP describes how to change the menubutton in the Tk core to add a -compound option to display both text and images. This behavior already exists in the button widget.
\\\hline\hline
\textbf{TIP \#12}:&\textbf{The "Batteries Included" Distribution}\\
Version:&\tipversion$Revision: 1.3 $\\
Authors:&George A. Howlett \tipmail{gah}{siliconmetrics.com}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&15 September 2000\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
This document describes a comprehensive Tcl/Tk distribution. Its primary purpose is to create a standard source tree that includes Tcl, Tk, and extensions so that they can be built and installed in an simple and easy manner.
\\\hline\hline
\textbf{TIP \#13}:&\textbf{Web Service for Drafting and Archiving TIPs}\\
Version:&\tipversion$Revision: 1.26 $\\
Authors:&Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Accepted\\Type:&Process\\
Vote:&Done\\
Created:&21 November 2000\\
Posting History:&
\\
&\\Abstract:&
This document proposes the TCT provide a service on the World Wide Web for drafting and archiving TIPs and for providing TIPs in a variety of formats. A reference implementation is provided, and its server requirements are outlined.
\\\hline\hline
\textbf{TIP \#14}:&\textbf{Access to Tk Photo Image Transparency}\\
Version:&\tipversion$Revision: 2.5 $\\
Author:&Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4.0\\
Vote:&Done\\
Created:&22 November 2000\\
Posting History:&
\\
Keywords:&Tk, photo, transparency, internal, access\\
&\\Abstract:&
It is useful for some code (both extensions and scripts) to have access to the transparency information in photo images for various reasons, but this is not currently available, even via an internal structure defined in \textit{generic/tkInt.h}. This TIP is aimed at making the information available, and in such a way at the C level that backward compatibility is maintained in the future even if the internal structure definitions change.
\\\hline\hline
\textbf{TIP \#15}:&\textbf{Functions to List and Detail Math Functions}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4.0\\
Vote:&Done\\
Created:&22 November 2000\\
Posting History:&
\\
Keywords:&Tcl, expr, function, introspection\\
&\\Abstract:&
Provides a way for the list of all math functions defined in the current interpreter to be discovered, and for discovering what arguments might be passed to an existing math function. This may be useful in tests as well as more general use.
\\\hline\hline
\textbf{TIP \#16}:&\textbf{Tcl Functional Areas for Maintainer Assignments}\\
Version:&\tipversion$Revision: 1.48 $\\
Authors:&Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Daniel Steffen \tipmail{das}{users.sourceforge.net}
\\
State:&Accepted\\Type:&Process\\
Vote:&Done\\
Created:&21 November 2000\\
Posting History:&
\\
&\\Abstract:&
This document proposes a division of Tcl's source code into functional areas so that each area may be assigned to one or more maintainers.
\\\hline\hline
\textbf{TIP \#17}:&\textbf{Redo Tcl's filesystem}\\
Version:&\tipversion$Revision: 1.18 $\\
Author:&Vince Darley \tipmail{vince}{santafe.edu}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4.0\\
Vote:&Done\\
Created:&17 November 2000\\
Posting History:&
\\
&\\Abstract:&
Many of the most exciting recent developments in Tcl have involved putting virtual file systems in a file (e.g. Prowrap, Freewrap, Wrap, TclKit) but these have been largely \textit{ad hoc} hacks of various internal APIs. This TIP seeks to replace this with a common underlying API that will, in addition, make porting of Tcl to new platforms a simpler task as well.
\\\hline\hline
\textbf{TIP \#18}:&\textbf{Add Labels to Frames}\\
Version:&\tipversion$Revision: 2.3 $\\
Author:&Peter Spjuth \tipmail{peter.spjuth}{space.se}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&12 December 2000\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to add a labelled frame widget to Tk.
\\\hline\hline
\textbf{TIP \#19}:&\textbf{Add a Text Changed Flag to Tk's Text Widget}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Neil McKay \tipmail{mckay}{eecs.umich.edu}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4a2\\
Vote:&Done\\
Created:&03 January 2001\\
Posting History:&
\\
Obsoleted By:&TIP \#26\\
&\\Abstract:&
This TIP adds a \textit{text changed} flag to the Tk text widget. The flag would initially be reset, but would be set whenever the contents of the text widget changes.
\\\hline\hline
\textbf{TIP \#20}:&\textbf{Add C Locale-Exact CType Functions}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Jeffrey Hobbs \tipmail{jeff.hobbs}{acm.org}
\\
State:&Deferred\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&08 January 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP adds functions to Tcl that are a subset of the standard ctype functions (isspace, isalpha, ...) that are ensured to operate only in the C locale (char \tiplangle{} 0x80).
\\\hline\hline
\textbf{TIP \#21}:&\textbf{Asymmetric Padding in the Pack and Grid Geometry Managers}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&D. Richard Hipp \tipmail{drh}{hwaci.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&14 January 2001\\
Posting History:&
\\
&\\Abstract:&
Proposes modifying the \textit{pack} and \textit{grid} geometry managers to support asymmetric padding.
\\\hline\hline
\textbf{TIP \#22}:&\textbf{Multiple Index Arguments to lindex}\\
Version:&\tipversion$Revision: 1.22 $\\
Authors:&David Cuthbert \tipmail{dacut}{kanga.org}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\par Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4a2\\
Vote:&Done\\
Created:&19 January 2001\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl, mailto:kennykb@acm.org\\
Keywords:&lindex, multiple arguments, sublists\\
&\\Abstract:&
Obtaining access to elements of sublists in Tcl often requires nested calls to the \textit{lindex} command. The indices are syntactically listed in most-nested to least-nested order, which is the reverse from other notations. In addition, the nesting of command substitution brackets further decreases readability. This proposal describes an extension to the \textit{lindex} command that allows it to accept multiple index arguments, in least-nested to most-nested order, to automatically extract elements of sublists.
\\\hline\hline
\textbf{TIP \#23}:&\textbf{Tk Toolkit Functional Areas for Maintainer Assignments}\\
Version:&\tipversion$Revision: 1.30 $\\
Authors:&Kevin Kenny \tipmail{kennykb}{acm.org}
\par Jim Ingham \tipmail{jingham}{apple.com}
\par Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Daniel A. Steffen \tipmail{das}{users.sourceforge.net}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Accepted\\Type:&Process\\
Vote:&Done\\
Created:&22 January 2001\\
Posting History:&
\\
&\\Abstract:&
This document proposes a division of the Tk toolkit's source code into functional areas so that each area may be assigned to one or more maintainers.
\\\hline\hline
\textbf{TIP \#24}:&\textbf{Tcl Maintainer Assignments}\\
Version:&\tipversion$Revision: 1.56 $\\
Authors:&Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par Kevin B. Kenny \tipmail{kennykb}{acm.org}
\par Jeff Hobbs \tipmail{hobbs}{users.sourceforge.net}
\par Pavel Goran \tipmail{pvgoran}{newmail.ru}
\par Daniel A. Steffen \tipmail{das}{users.sourceforge.net}
\par miguel sofer \tipmail{msofer}{users.sf.net}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&29 January 2001\\
Posting History:&
\\
&\\Abstract:&
This document keeps a record of who maintains each functional area of Tcl (\cite{tip16}).
\\\hline\hline
\textbf{TIP \#25}:&\textbf{Native tk\_messageBox  on Macintosh}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Mats Bengtsson \tipmail{matben}{privat.utfors.se}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&07 February 2001\\
Posting History:&
\\
Obsoleted By:&TIP \#152\\
&\\Abstract:&
This is a replacement for the \textit{tk\_messageBox} on the Macintosh with a native implementation which is compliant with the Appearance Manager in Mac OS 8 and later.
\\\hline\hline
\textbf{TIP \#26}:&\textbf{Enhancements for the Tk Text Widget}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Ludwig Callewaert \tipmail{ludwig_callewaert}{frontierd.com}
\par Ludwig Callewaert \tipmail{ludwig.callewaert}{belgacom.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&20 February 2001\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
Obsoletes:&TIP \#19\\
&\\Abstract:&
This TIP proposes several enhancements for the Tk text widget. An unlimited undo/redo mechanism is proposed, with several user available customisation features. Related to this, a text modified indication is proposed. This means that the user can set, query or receive a virtual event when the content of the text widget is modified. And finally a virtual event is added that is generated whenever the selection changes in the text widget.
\\\hline\hline
\textbf{TIP \#27}:&\textbf{CONST Qualification on Pointers in Tcl API's}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&25 February 2001\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl, mailto:kennykb@acm.org\\
&\\Abstract:&
Many of the C and C++ interfaces to the Tcl library lack a CONST qualifier on the parameters that accept pointers, even though they do not, in fact, modify the data that the pointers designate. This lack causes a persistent annoyance to C/C++ programmers. Not only is the code needed to work around this problem more verbose than required; it also can lead to compromises in type safety. This TIP proposes that the C interfaces for Tcl be revised so that functions that accept pointers to constant data have type signatures that reflect the fact. The new interfaces will remain backward-compatible with the old, except that a few must be changed to return pointers to CONST data. (Changes of this magnitude, in the past, have been routine in minor releases; the author of this TIP does not see a compelling reason to wait for Tcl 9.0 to clean up these API's.)
\\\hline\hline
\textbf{TIP \#28}:&\textbf{How to be a good maintainer for Tcl/Tk}\\
Version:&\tipversion$Revision: 1.24 $\\
Author:&Don Porter \tipmail{dgp}{users.sourceforge.net}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&23 February 2001\\
Posting History:&
\\
&\\Abstract:&
This document presents information and advice to maintainers in the form of a Frequently Asked Questions (FAQ) list.
\\\hline\hline
\textbf{TIP \#29}:&\textbf{Allow array syntax for Tcl lists}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Kevin Kenny \tipmail{kennykb}{acm.org}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Done\\
Created:&07 March 2001\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl, mailto:kennykb@acm.org\\
&\\Abstract:&
Most popular programming languages provide some sort of indexed array construct, where array subscripts are integers. Tcl's lists are, in fact, arrays, but the existing syntax obscures the fact. Moreover, the existing list commands make it difficult to manipulate lists as arrays without running into peculiar performance issues. This TIP proposes that the syntax of \textit{variableName(value)} be extended to function as an array selector if \textit{variableName} designates a list. This change is upward compatible with existing Tcl scripts, because the proposed syntax results in a runtime error in every extant Tcl release.
\\\hline\hline
\textbf{TIP \#30}:&\textbf{Tk Toolkit Maintainer Assignments}\\
Version:&\tipversion$Revision: 1.46 $\\
Authors:&Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\par Jan Nijtmans \tipmail{j.nijtmans}{chello.nl}
\par Todd M. Helfter \tipmail{tmh}{purdue.edu}
\par Chengye Mao \tipmail{chengye.geo}{yahoo.com}
\par George B. Smith \tipmail{gbs}{k9haven.com}
\par Miguel Ba\~{n}\'{o}n \tipmail{bagnonm}{safelayer.com}
\par Daniel Steffen \tipmail{das}{users.sourceforge.net}
\par Peter Spjuth \tipmail{peter.spjuth}{space.se}
\par Jeff Hobbs \tipmail{hobbs}{users.sourceforge.net}
\par Vince Darley \tipmail{vincentdarley}{users.sourceforge.net}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par Benjamin Riefenstahl \tipmail{B.Riefenstahl}{turtle-trading.net}
\par Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\par Vince Darley \tipmail{vince}{santafe.edu}
\par Peter Spjuth \tipmail{peter.spjuth}{gmail.com}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&09 March 2001\\
Posting History:&
\\
&\\Abstract:&
This document keeps a record of who maintains each functional area of Tk (\cite{tip23}).
\\\hline\hline
\textbf{TIP \#31}:&\textbf{CVS tags in the Tcl and Tk repositories}\\
Version:&\tipversion$Revision: 1.38 $\\
Authors:&Don Porter \tipmail{dgp}{users.sourceforge.net}
\par miguel sofer \tipmail{mig}{utdt.edu}
\par Jeff Hobbs \tipmail{JeffH}{ActiveState.com}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\par David Gravereaux \tipmail{davygrvy}{pobox.com}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\par Andreas Kupries \tipmail{andreas_kupries}{users.sourceforge.net}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par \tipmail{dgp}{users.sf.net}
\par Kevin Kenny ‚kennykb@acm.org ƒ
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&12 March 2001\\
Posting History:&
\\
&\\Abstract:&
This document keeps a record of the CVS tags used in the Tcl and Tk repositories and their meanings.
\\\hline\hline
\textbf{TIP \#32}:&\textbf{Add Tcl\_Obj-enabled counterpart to Tcl\_CreateTrace}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&David Cuthbert \tipmail{dacut}{kanga.org}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4a4\\
Vote:&Done\\
Created:&23 March 2001\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
Keywords:&trace, Tcl\_Obj\\
&\\Abstract:&
This document proposes to add Tcl\_Obj support for trace procedures written in C.
\\\hline\hline
\textbf{TIP \#33}:&\textbf{Add 'lset' Command to Assign to List Elements.}\\
Version:&\tipversion$Revision: 1.13 $\\
Author:&Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&15 May 2001\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl, mailto:kennykb@acm.org\\
&\\Abstract:&
Most popular programming languages provide some sort of indexed array construct, where array subscripts are integers. Tcl's lists are implemented internally as indexed arrays, but it is difficult to use them as such because there is no convenient way to assign to individual elements. This TIP proposes a new command, \textit{lset}, to rectify this limitation.
\\\hline\hline
\textbf{TIP \#34}:&\textbf{Modernize TEA Build System}\\
Version:&\tipversion$Revision: 2.7 $\\
Authors:&Mo DeJong \tipmail{supermo}{bayarea.net}
\par Andreas Kupries \tipmail{andreas_kupries}{users.sourceforge.net}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&03 May 2001\\
Posting History:&
\\
&\\Abstract:&
A number of things in the original TEA specification and documentation have fallen out of date. Numerous complaints about the difficulty of creating a TEA compliant package have appeared on \url{news:comp.lang.tcl.} Other complaints about the ease of building Tcl and Tk using the autoconf based build system have also surfaced. Addressing these concerns is made even more difficult by the fact that two independent build systems currently exist, one for UNIX, and one for Windows. Maintaining multiple build systems is a frustratingly slow process that wastes time better spent on other issues. In addition, the Tcl build scripts do not support cross compilation which makes the maintenance process even slower since one can't test simple build system changes for a given platform without access to that platform. This document describes how these concerns can be addressed.
\\\hline\hline
\textbf{TIP \#35}:&\textbf{Enhanced Support for Serial Communications}\\
Version:&\tipversion$Revision: 1.12 $\\
Author:&Rolf Schroedter \tipmail{rolf.schroedter}{dlr.de}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&06 June 2001\\
Posting History:&
\\
&\\Abstract:&
Tcl's support for RS-232 is very rudimentary. Mainly it allows to setup the communication rate [fconfigure -mode] and to read and write data with the standard Tcl functions. Real serial communications are often more complex. Therefore it is proposed to add support for hardware and software flow control, polling RS-232 (modem) status lines, and watching the input and output queue. This is all to be implemented via additional [fconfigure] options.
\\\hline\hline
\textbf{TIP \#36}:&\textbf{Library Access to 'Subst' Functionality}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&13 June 2001\\
Posting History:&
\\
&\\Abstract:&
Some applications make very heavy use of the \textit{subst} command --- it seems particularly popular in the active-content-generation field --- and for them it is important to optimise this as much as possible. This TIP adds a direct interface to these capabilities to the Tcl library, allowing programmers to avoid the modest overheads of even \textit{Tcl\_EvalObjv} and the option parser for the \textit{subst} command implementation.
\\\hline\hline
\textbf{TIP \#37}:&\textbf{Uniform Rows and Columns in Grid}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&Peter Spjuth \tipmail{peter.spjuth}{space.se}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&19 June 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to add a \textit{-uniform} option to \textit{grid rowconfigure} and \textit{grid columnconfigure} so as to make it easier to create layouts where cells are constrained to have identical dimensions.
\\\hline\hline
\textbf{TIP \#38}:&\textbf{Add Support for Default Bindtags}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Bryan Oakley \tipmail{boakley}{austin.rr.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&27 June 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to add support for the ability to change the default list of bindtags for a class of widgets.
\\\hline\hline
\textbf{TIP \#39}:&\textbf{Add New Standard Tk Option: -component}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Bryan Oakley \tipmail{boakley}{austin.rr.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&04 July 2001\\
Posting History:&
\\
Keywords:&compound, megawidget\\
&\\Abstract:&
This TIP proposes to add a new standard option, \textit{-component}, for all Tk widgets.
\\\hline\hline
\textbf{TIP \#40}:&\textbf{Documentation Generator for Tcl Scripts}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Arjen Markus \tipmail{arjen.markus}{wldelft.nl}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.0\\
Vote:&Pending\\
Created:&04 July 2001\\
Posting History:&
\\
Keywords:&documentation, automatic generation, HTML, reference\\
&\\Abstract:&
This TIP proposes the adoption of a standard documentation format for Tcl scripts and the implementation of a simple tool that will extract this documentation from the source code so that it may be turned into a programmer's guide. This is in essence akin to documentation tools like the well-known \textit{javadoc} utility for Java programs and Eiffel's short utility.
\\\hline\hline
\textbf{TIP \#41}:&\textbf{Paned Window Tk Widget}\\
Version:&\tipversion$Revision: 1.13 $\\
Author:&Eric Melski \tipmail{ericm}{interwoven.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4a2\\
Vote:&Done\\
Created:&04 July 2001\\
Posting History:&
\\
Keywords:&widget, tk, panedwindow\\
&\\Abstract:&
This TIP proposes a C-based paned window widget for inclusion in the Tk core. A paned window consists of one or more vertical or horizontal ``panes'', each pair separated by a movable ``sash'' and each containing one widget, called a ``slave''. Paned windows are common in modern graphical user interfaces and should therefore be provided directly by the Tk core. Examples of the widget can be found in Windows Explorer; Netscape Messenger; many email clients; and virtually every graphical World Wide Web browser.
\\\hline\hline
\textbf{TIP \#42}:&\textbf{Add New Standard Tk Option: -clientdata}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Bryan Oakley \tipmail{boakley}{austin.rr.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&05 July 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to add a new standard option, -clientdata, for all Tk widgets.
\\\hline\hline
\textbf{TIP \#43}:&\textbf{How to be a TIP Editor}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&07 July 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP describes some of the rules and guidelines that the TIP Editor uses when accepting TIPs for the first time.
\\\hline\hline
\textbf{TIP \#44}:&\textbf{Move Tk's Private Commands and Variables into ::tk Namespace}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Don Porter \tipmail{dgp}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&16 July 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes that Tk's private commands and variables be moved into the namespace \textit{::tk} or its descendent namespace(s).
\\\hline\hline
\textbf{TIP \#45}:&\textbf{Empty index lists for [lindex] and [lset]}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Kevin Kenny \tipmail{kennykb}{acm.org}
\par Don Porter \tipmail{dgp}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4b1\\
Vote:&Done\\
Created:&18 July 2001\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl, mailto:kennykb@acm.org\\
Keywords:&lindex, lset, multiple arguments, sublists\\
&\\Abstract:&
TIP's \#22 and \#33 contain an oversight in specifying the behavior of the multi-argument forms of \textit{lset} and \textit{lindex} when an empty index list is specified. The intended behavior is that an empty list of indices designates the entire list.
\\\hline\hline
\textbf{TIP \#46}:&\textbf{Consistent Overlap Behavior of Area-Defining Canvas Items }\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Gerhard Hintermayer \tipmail{g.hintermayer}{inode.at}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&18 July 2001\\
Posting History:&
\\
&\\Abstract:&
This document proposes that all canvas items that define an area should behave the same in terms of interior points, i.e. points that return the enclosing object id when submitted to \textit{[\$canvas find overlapping]}. Currently polygons behave differently from the rest (rectangle, arc, oval).
\\\hline\hline
\textbf{TIP \#47}:&\textbf{Modifying Tk to Allow Writing X Window managers}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Neil McKay \tipmail{mckay}{eecs.umich.edu}
\par Andreas Kupries \tipmail{andreas_kupries}{users.sourceforge.net}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&19 July 2001\\
Posting History:&
\\
&\\Abstract:&
With a few modifications to the Tk core, extensions could be written that would allow X window managers to be implemented as Tcl/Tk scripts.
\\\hline\hline
\textbf{TIP \#48}:&\textbf{Tk Widget Styling Support}\\
Version:&\tipversion$Revision: 1.20 $\\
Authors:&Fr\'{e}d\'{e}ric Bonnet \tipmail{fredericbonnet}{free.fr}
\par Fr\'{e}d\'{e}ric Bonnet \tipmail{fbonnet}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&23 July 2001\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
The Tk Toolkit is one of the last major GUI toolkits lacking themes support. This TIP proposes several changes to widget design that allows custom code to be provided for widget element handling in a transparent and extensible fashion. User-provided code may then be used to alter the widgets' look without the need to alter the Tk core. The proposed changes induce no loss of compatibility, and only slight core changes are needed with no side effect on existing functionality.
\\\hline\hline
\textbf{TIP \#49}:&\textbf{I/O Subsystem: Add API Tcl\_OutputBuffered(chan)}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Rolf Schroedter \tipmail{rolf.schroedter}{dlr.de}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&25 July 2001\\
Posting History:&
\\
&\\Abstract:&
This document proposes the new public function \textit{Tcl\_OutputBuffered()}, analogous to the existing public function \textit{Tcl\_InputBuffered()}.
\\\hline\hline
\textbf{TIP \#50}:&\textbf{Bundle [incr Tcl] with the Core Tcl distribution}\\
Version:&\tipversion$Revision: 1.12 $\\
Authors:&Kevin Kenny \tipmail{kennykb}{acm.org}
\par Mark Harrison \tipmail{markh}{asiainfo.com}
\par Jeff Hobbs \tipmail{jeffh}{ActiveState.com}
\par Andreas Kupries \tipmail{andreas}{ActiveState.com}
\par Karl Lehenbauer \tipmail{karl}{procplace.com}
\par Michael McLennan \tipmail{mmc}{cadence.com}
\par Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Brent Welch \tipmail{welch}{acm.org}
\\
State:&Final\\Type:&Informative\\
Vote:&Done\\
Created:&27 July 2001\\
Posting History:&
\\
&\\Abstract:&
A ``town meeting'' discussion in which users were given the opportunity to question the Tcl Core Team at the 2001 Open Source Convention has revealed a great popular demand for bundling an object system with the distribution of the Tcl Core. This TIP presents a compromise proposal for including [incr Tcl] that was acceptable to all eight TCT members present.
\\\hline\hline
\textbf{TIP \#51}:&\textbf{Native Menubutton on Macintosh}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Mats Bengtsson \tipmail{matben}{privat.utfors.se}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&04 August 2001\\
Posting History:&
\\
&\\Abstract:&
This is a replacement for the menubutton on the Macintosh with a native implementation which is compliant with the Appearance Manager in Mac OS 8 and later.
\\\hline\hline
\textbf{TIP \#52}:&\textbf{Hierarchical Namespace Lookup of Commands and Variables}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&David Cuthbert \tipmail{dacut}{kanga.org}
\par Andreas Kupries \tipmail{andreas_kupries}{users.sourceforge.net}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&09 August 2001\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
Keywords:&namespace, lookup, hierarchy\\
&\\Abstract:&
This TIP proposes to change the command and variable namespace lookup system so that the full hierarchy of namespaces is parsed, rather than just the current namespace followed by the global namespace. This is primarily intended to rectify problems often encountered with the use of [incr Tcl] (ITcl) and namespaces. In addition, package encapsulation can be enhanced with judicious application of this feature.
\\\hline\hline
\textbf{TIP \#53}:&\textbf{Addition of 'assert' Command}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Gerald W. Lester \tipmail{Gerald.Lester}{aspentech.com}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Pending\\
Created:&14 August 2001\\
Posting History:&
\\
Keywords:&bytecode, compiler\\
&\\Abstract:&
This TIP proposes the addition of an \textit{assert} command and supporting infrastructure to the Tcl core.
\\\hline\hline
\textbf{TIP \#54}:&\textbf{Using PURLs to Unite the Tcl Webspace}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Andreas Kupries \tipmail{andreas_kupries}{users.sourceforge.net}
\par Jeff Hobbs \tipmail{hobbs}{users.sourceforge.net}
\\
State:&Withdrawn\\Type:&Process\\
Vote:&Pending\\
Created:&16 August 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes the use of PURLs to unify the scattered landscape of Tcl URLs into a coherent set of information about the language, the community, extensions, etc.
\\\hline\hline
\textbf{TIP \#55}:&\textbf{Package Format for Tcl Extensions}\\
Version:&\tipversion$Revision: 1.18 $\\
Authors:&Steve Cassidy \tipmail{Steve.Cassidy}{mq.edu.au}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\\
State:&Draft\\Type:&Informative\\
Vote:&No voting\\
Created:&16 August 2001\\
Posting History:&
\\
&\\Abstract:&
This document specifies the contents of a binary distribution of a Tcl package, especially directory structure and required files, suitable for automated installation into an existing Tcl installation.
\\\hline\hline
\textbf{TIP \#56}:&\textbf{Standardize Call Interface to Tcl\_Eval* Functions}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Miguel Sofer \tipmail{msofer}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&28 August 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP replaces \textit{Tcl\_EvalTokens} with \textit{Tcl\_EvalTokensStandard}, which obeys the standard result management conventions for script evaluation functions.
\\\hline\hline
\textbf{TIP \#57}:&\textbf{Move TclX's [lassign] into the Tcl Core}\\
Version:&\tipversion$Revision: 2.4 $\\
Authors:&Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\par Agnar Renolen \tipmail{agnar.renolen}{emap.no}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&30 August 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to move the \textit{lassign} command from the TclX extension into the Tcl core to make multiple assignment a much easier process for people.
\\\hline\hline
\textbf{TIP \#58}:&\textbf{Extend [set] to Assign Multiple Values to Multiple Variables}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Anselm Lingnau \tipmail{anselm}{strathspey.org}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&02 September 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a multiple assignment command as a backwards-compatible extension to the Tcl \textit{set} command.
\\\hline\hline
\textbf{TIP \#59}:&\textbf{Embed Build Information in Tcl Binary Library}\\
Version:&\tipversion$Revision: 1.16 $\\
Author:&Andreas Kupries \tipmail{andreas_kupries}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&04 September 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP provides an interface through which Tcl may be queried for information on its own configuration, in order to extract the information directly instead of reading it from a Bourne shell file. An important reason to do this is to have the information not only available but also tightly bound to the binary configured by it, so that the information doesn't get lost.
\\\hline\hline
\textbf{TIP \#60}:&\textbf{EXTERN Macro Change to Support a Wider Set of Attributes}\\
Version:&\tipversion$Revision: 1.21 $\\
Authors:&David Gravereaux \tipmail{davygrvy}{pobox.com}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&06 September 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a change to how the EXTERN macro in \textit{tcl.h} works to support a wider range of compiler specific attributes.
\\\hline\hline
\textbf{TIP \#61}:&\textbf{Make TK\_NO\_SECURITY Run-Time Switchable}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Jeff Hobbs \tipmail{JeffH}{ActiveState.com}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Deferred\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&12 September 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP changes the compile time Tk define TK\_NO\_SECURITY to be switchable at run-time.
\\\hline\hline
\textbf{TIP \#62}:&\textbf{Add Support for Command Tracing}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&Hemang Lavana \tipmail{HemangLavana}{users.sourceforge.net}
\par Vince Darley \tipmail{vince.darley}{eurobios.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&18 September 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes that the Tcl's trace command be extended to include the following features: 1. tracing of command execution for the specified tcl command, and 2. step-wise tracing of any command execution within a specified procedure.
\\\hline\hline
\textbf{TIP \#63}:&\textbf{Add -compound Option to Menu Entries}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Vince Darley \tipmail{vincentdarley}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&27 September 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP adds to menu entries the ability to display both textual labels and images (or bitmaps) in exactly the same way as buttons and menubuttons currently can, by adding a \textit{-compound} option.
\\\hline\hline
\textbf{TIP \#64}:&\textbf{Improvements to Windows Font Handling}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Chris Nelson \tipmail{chris}{pinebush.com}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Deferred\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&27 September 2001\\
Posting History:&
\\
Obsoleted By:&TIP \#145\\
&\\Abstract:&
This TIP improves handling of native fonts in Tk under Microsoft Windows making Tk applications more aesthetic and more consistent with users' expectations of 'Windows applications.
\\\hline\hline
\textbf{TIP \#65}:&\textbf{Enhanced [info args]}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Glenn Jackman \tipmail{glennj}{nortelnetworks.com}
\par Don Porter \tipmail{dgp}{users.sf.net}
\par Glenn Jackman \tipmail{glennj}{ncf.ca}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&18 September 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a new subcommand to the [info] command be added that would return the list of arguments, together with any default values in the same format as the \textit{args} parameter to the [proc] command.
\\\hline\hline
\textbf{TIP \#66}:&\textbf{Stand-alone and Embedded Tcl/Tk Applications}\\
Version:&\tipversion$Revision: 1.15 $\\
Author:&Arjen Markus \tipmail{arjen.markus}{wldelft.nl}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&02 October 2001\\
Posting History:&
\\
Keywords:&installation, initialisation, embedded, resources\\
&\\Abstract:&
This TIP describes the development and deployment of Tcl/Tk applications, with particular attention on how to \textit{embed} the interpreter into executables written in C or C++.
\\\hline\hline
\textbf{TIP \#67}:&\textbf{Allow Subclassing of tk\_getOpenFile, tk\_getSaveFile on UNIX}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Chris Nelson \tipmail{nelson}{pinebush.com}
\par Al Zielaskowski \tipmail{zielasko}{pinebush.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&09 October 2001\\
Posting History:&
\\
&\\Abstract:&
On Microsoft Windows it is possible to ``subclass'' a standard dialog and add controls to it. This TIP proposes adding that feature to the \textit{tk\_getOpenFile} and \textit{tk\_getSaveFile} dialogs for non-Windows systems (wherever \textit{tkfbox.tcl} and \textit{xmfbox.tcl} are used for these dialogs).
\\\hline\hline
\textbf{TIP \#68}:&\textbf{Dynamic Trace Result Handling}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&16 October 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes an extension to the \textit{Tcl\_TraceVar} API to cope with dynamically allocated results.
\\\hline\hline
\textbf{TIP \#69}:&\textbf{Improvements for the Tcl Hash Table}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&George A. Howlett \tipmail{gah}{siliconmetrics.com}
\par Don Porter \tipmail{dgp}{users.sf.net}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Pending\\
Created:&16 October 2001\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
This document describes various improvements to the existing Tcl hash table. They include support for 64 bit platforms, better memory performance, and improved array hashing. The goal is a hash table that improves Tcl/Tk, but also can be used in industrial strength applications.
\\\hline\hline
\textbf{TIP \#70}:&\textbf{A Relational Switch Control Structure}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Bhushit Joshipura \tipmail{bhushit}{hotmail.com}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&20 October 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes the introduction of a new control structure, \textit{rswitch}, which is a relational parallel to switch-case control structure. It consists of two lists: condition list and situation-reaction list. At the maximum two conditions can be specified. Based on situation, reaction is executed. The situation is selected on ``first true and only the first true'' basis.
\\\hline\hline
\textbf{TIP \#71}:&\textbf{Tk Bitmap Image Improvements}\\
Version:&\tipversion$Revision: 1.14 $\\
Authors:&Chris Nelson \tipmail{chris}{pinebush.com}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\par Eric Melski \tipmail{ericm}{interwoven.com}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&26 October 2001\\
Posting History:&
\\
&\\Abstract:&
Tk has a number of pre-defined bitmaps (10 on all platforms) but it lacks a number of bitmaps useful for creating GUI elements. This TIP adds several such bitmaps (as bitmap images).
\\\hline\hline
\textbf{TIP \#72}:&\textbf{64-Bit Value Support for Tcl on 32-Bit Platforms}\\
Version:&\tipversion$Revision: 1.10 $\\
Author:&Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&05 November 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP adds the capability to perform computations on values that are (at least) 64-bits wide even on 32-bit platforms. It also adds support for handling files that are larger than 2GB large on those platforms (where supported by the underlying platform and filing system).
\\\hline\hline
\textbf{TIP \#73}:&\textbf{Export Tcl\_GetTime in the Public API}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&03 November 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes that the existing \textit{TclpGetTime} function be renamed to be \textit{Tcl\_GetTime} and included in the published API.
\\\hline\hline
\textbf{TIP \#74}:&\textbf{wm stackorder command}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Mo DeJong \tipmail{mdejong}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&12 November 2001\\
Posting History:&
\\
&\\Abstract:&
Tk provides no means to query the stacking order of toplevel windows. This functionality would be useful to applications that wished to save and restore the state and relative order of each toplevel. This functionality would also make it possible to write test cases for window manager related commands like focus, raise, and lower. This document suggests a new \textit{wm stackorder} command to address this deficiency.
\\\hline\hline
\textbf{TIP \#75}:&\textbf{Refer to Sub-RegExps Inside 'switch -regexp' Bodies}\\
Version:&\tipversion$Revision: 1.14 $\\
Authors:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par J\'{a}nos Hol\'{a}nyi \tipmail{csani}{lme.linux.hu}
\par Salvatore Sanfilippo \tipmail{antirez}{invece.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&28 November 2001\\
Posting History:&
\\
Discussions To:&http://purl.org/mini/cgi-bin/chat.cgi\\
Keywords:&switch, regexp, parentheses\\
&\\Abstract:&
Currently, it is necessary to match a regular expression against a string twice in order to get the sub-expressions out of the matched string. This TIP alters that so that those sub-exps can be substituted directly into the body of the script to be executed.
\\\hline\hline
\textbf{TIP \#76}:&\textbf{Make 'regsub' Return a String}\\
Version:&\tipversion$Revision: 1.3 $\\
Authors:&Bruce Hartweg \tipmail{B.Hartweg}{compaq.com}
\par Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&29 November 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes altering the [regsub] command so that it can return the substituted string as the result of the command.
\\\hline\hline
\textbf{TIP \#77}:&\textbf{Support for Nested Paired Item Lists}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Christian Williams \tipmail{xian}{planetoutpartners.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&07 December 2001\\
Posting History:&
\\
Obsoleted By:&TIP \#111\\
&\\Abstract:&
Tcl arrays can be transformed to and from lists using the \textit{array get} and \textit{array set} commands. This TIP proposes a new command for working directly these paired lists, and extending them to allow nesting in a manner analogous to \cite{tip22}.
\\\hline\hline
\textbf{TIP \#78}:&\textbf{TEA 2.0 Definitions}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Andreas Kupries \tipmail{andreas_kupries}{users.sourceforge.net}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&15 December 2001\\
Posting History:&
\\
&\\Abstract:&
This document is an informational TIP providing definitions for commonly used terms (like package, extension, core, distribution, etc.) to make future communication among people in the community easier. It is recommended that future and past documents specifying details inside of the greater context of TEA refer to this document to ensure a consistent usage of terms.
\\\hline\hline
\textbf{TIP \#79}:&\textbf{Add Deletion Callback to Tcl\_CreateObjTrace}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&03 January 2002\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
Keywords:&trace, Tcl\_Obj\\
&\\Abstract:&
This document is a correction to the \textit{Tcl\_CreateObjTrace} API from \cite{tip32}. It addresses a deficiency that the API provides no deletion callback for its client data.
\\\hline\hline
\textbf{TIP \#80}:&\textbf{Additional Options for 'lsearch'}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&Tom Wilkason \tipmail{tom.wilkason}{home.com}
\par Tom Wilkason \tipmail{tom.wilkason}{cox.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&02 January 2002\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
This TIP proposes additional options for the \textit{lsearch} command to return and work with all matching items in the return rather than the first matching item. Additional options are also added.
\\\hline\hline
\textbf{TIP \#81}:&\textbf{[incr Tcl] Functional Areas for Maintainer Assignments}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Withdrawn\\Type:&Process\\
Vote:&Pending\\
Created:&07 January 2002\\
Posting History:&
\\
&\\Abstract:&
This document proposes a division of [incr Tcl]'s source code into functional areas so that each area may be assigned to one or more maintainers.
\\\hline\hline
\textbf{TIP \#82}:&\textbf{Add -offrelief Option to Checkbutton and Radiobutton}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&D. Richard Hipp \tipmail{drh}{hwaci.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&10 January 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes adding option \textit{-offrelief} to the checkbutton and radiobutton widgets to specify the relief of the widget when \textit{-indicatoron} is off and the state of the button is off. This feature is needed to support the use of checkbutton and radiobutton widgets on toolbars.
\\\hline\hline
\textbf{TIP \#83}:&\textbf{Augment Tcl\_EvalFile with Tcl\_EvalChannel and Tcl\_EvalUrl}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Marian Szczepkowski \tipmail{marian}{mail.jozep.com.au}
\par \tipmail{dgp}{users.sf.net}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&24 January 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP adds the ability to load Tcl files directly from URLs to the core, together with a basic mechanism to simply evaluate a stream of characters from a channel.
\\\hline\hline
\textbf{TIP \#84}:&\textbf{Add control for mouse movement filtering}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Jyrki Alakuijala \tipmail{Jyrki.Alakuijala}{iki.fi}
\par Jeff Hobbs \tipmail{JeffH}{ActiveState.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&26 February 2002\\
Posting History:&
\\
&\\Abstract:&
When the mouse is moved, the Tcl/Tk system eats most of the mouse movement events and only the last movement event when Tcl/Tk is not busy is stored in the event queue. I would like to obtain all the movement events from the X-server or the Windows UI.
\\\hline\hline
\textbf{TIP \#85}:&\textbf{Custom Comparisons in Tcltest}\\
Version:&\tipversion$Revision: 1.14 $\\
Authors:&Arjen Markus \tipmail{arjen.markus}{wldelft.nl}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&31 January 2002\\
Posting History:&
\\
Keywords:&test, string comparison, floating-point\\
&\\Abstract:&
This TIP proposes a simple mechanism to make the \textit{tcltest} package an even more flexible package than it already is by allowing the programmer to define his or her own comparison procedures. Such procedures can deal with issues like allowing a (small) tolerance in floating-point results.
\\\hline\hline
\textbf{TIP \#86}:&\textbf{Improved Debugger Support}\\
Version:&\tipversion$Revision: 1.26 $\\
Authors:&Peter MacDonald \tipmail{peter}{browsex.com}
\par Peter MacDonald \tipmail{peter}{pdqi.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&08 February 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes the storage by Tcl of source code file-name and line-numbering information, making it available at script execution time. It also adds additional \textbf{trace} and \textbf{info} subcommands to make it easier for a debugger to control a Tcl script much as \textit{gdb} can control a C program.
\\\hline\hline
\textbf{TIP \#87}:&\textbf{Allow Tcl Access to the Recursion Limit}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&Stephen Trier \tipmail{sct}{po.cwru.edu}
\par Richard Suchenwirth \tipmail{richard.suchenwirth-bauersachs}{siemens.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&19 February 2002\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
Keywords:&Tcl\_SetRecusionLimit, recursion limit\\
&\\Abstract:&
An extension to the [interp] command, [interp recursionlimit], will permit Tcl scripts to control their own recursion limits. Until now, this limit has been changeable from a C API, but not from within Tcl.
\\\hline\hline
\textbf{TIP \#88}:&\textbf{Extend Tcl Process Id Control via 'pid'}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Jeff Hobbs \tipmail{JeffH}{ActiveState.com}
\par Vince Darley \tipmail{vincentdarley}{users.sourceforge.net}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&11 March 2002\\
Posting History:&
\\
Obsoleted By:&TIP \#240\\
&\\Abstract:&
This TIP proposes extended the [pid] command to provide more control over native processes in Tcl.
\\\hline\hline
\textbf{TIP \#89}:&\textbf{Try/Catch Exception Handling in the Core}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&Tom Wilkason \tipmail{tom.wilkason}{cox.net}
\par Frank Pilhofer \tipmail{520065607613-0001}{t-online.de}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Pending\\
Created:&11 March 2002\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
Obsoleted By:&TIP \#329\\
&\\Abstract:&
This TIP proposes the addition of a \textbf{try}...\textbf{catch}...\textbf{finally} command to provide a more robust and powerful exception handling mechanism.
\\\hline\hline
\textbf{TIP \#90}:&\textbf{Enable [return -code] in Control Structure Procs}\\
Version:&\tipversion$Revision: 1.39 $\\
Authors:&Don Porter \tipmail{dgp}{users.sf.net}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&15 March 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP analyzes existing limitations on the coding of control structure commands as \textit{proc}s, and presents expanded forms of \textit{catch} and \textit{return} to remove those limitations.
\\\hline\hline
\textbf{TIP \#91}:&\textbf{Backward Compatibility for Channel Types with 32-bit SeekProcs}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&03 May 2002\\
Posting History:&
\\
&\\Abstract:&
\cite{tip72} broke backward-compatibility for channels that supported the [seek] command, and this TIP adds the ability for old-style channels to work with the underlying 64-bit architecture.
\\\hline\hline
\textbf{TIP \#92}:&\textbf{Move Package Load Decisions to Application Developer}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Clif Flynt \tipmail{clif}{cflynt.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Pending\\
Created:&13 May 2002\\
Posting History:&
\\
Keywords:&package require, namespace, pkg\_mkIndex\\
&\\Abstract:&
This TIP makes the loading of packages far more flexible, so as to better support their use by application authors in situations above and beyond those foreseen by the developer of the package.
\\\hline\hline
\textbf{TIP \#93}:&\textbf{Get/Delete Enhancement for the Tk Text Widget}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Craig Votava \tipmail{craig}{lucent.com}
\par Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\par Jeff Hobbs \tipmail{JeffH}{ActiveState.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&28 December 2001\\
Posting History:&
\\
&\\Abstract:&
The Tk Text widget provides text tags, which are a very powerful thing. However, the current implementation does not provide an efficient way for a Tk Text widget programmer to extract (get) all of the actual text that has a given text tag. This TIP proposes to enhance the Tk Text widget to provide this functionality.
\\\hline\hline
\textbf{TIP \#94}:&\textbf{Add Listbox -activestyle Option}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Jeff Hobbs \tipmail{JeffH}{ActiveState.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&29 May 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to add a [-activestyle] option to the [listbox] widget that would control what style the active element has when the widget has focus (currently hard-coded to be underlined).
\\\hline\hline
\textbf{TIP \#95}:&\textbf{Add [wm attributes] Command}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Jeff Hobbs \tipmail{JeffH}{ActiveState.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&29 May 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes adding a [wm attributes] command in order to control platform-specific aspects of a toplevel. In addition, it proposes making [wm] a \textit{Tcl\_Obj}-based command and centralizing the common functionality.
\\\hline\hline
\textbf{TIP \#96}:&\textbf{Add [tk caret] Command and Tk\_SetCaretPos API}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Jeff Hobbs \tipmail{JeffH}{ActiveState.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&29 May 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to add a [tk caret] command and [Tk\_SetCaretPos] C API to manage \textit{carets} in Tk. \textit{caret} is the term for where text of graphics will be inserted. It is necessary for correct accessibility functionality (to know where to shift focus), and for location the IME or XIM input box to handle complex character input (e.g. Asian character sets).
\\\hline\hline
\textbf{TIP \#97}:&\textbf{Moving Vertices of Canvas Items}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&Agnar Renolen \tipmail{agnar.renolen}{emap.no}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&07 June 2002\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes a canvas subcommand (or possibly two) that allows for replacing characters in text objects and to move individual vertices of line and polygon items.
\\\hline\hline
\textbf{TIP \#98}:&\textbf{Adding Transparency Compositing Rules to Photo Images}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&09 June 2001\\
Posting History:&
\\
&\\Abstract:&
This TIP adds compositing rules to Tk's photo images to give programmers better control over what happens when two transparent images are combined. This TIP also allows for several frames of an animated GIF file to be correctly displayed in an image even when the transparent area is not constant.
\\\hline\hline
\textbf{TIP \#99}:&\textbf{Add 'file link' to Tcl}\\
Version:&\tipversion$Revision: 1.23 $\\
Author:&Vince Darley \tipmail{vincentdarley}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&11 June 2002\\
Posting History:&
\\
&\\Abstract:&
Tcl can read links, but cannot create them. This TIP proposes adding a \textit{file link} subcommand to allow cross-platform creation of links.
\\\hline\hline
\textbf{TIP \#100}:&\textbf{Add Support for Unloading Dynamic Libraries Loaded with [load]}\\
Version:&\tipversion$Revision: 1.10 $\\
Author:&George Petasis \tipmail{petasis}{iit.demokritos.gr}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&11 June 2002\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
Keywords:&load, unload, dynamic library\\
&\\Abstract:&
Tcl already provides facilities for loading dynamic libraries, through the \textit{load} command. However no facilities are currently offered in order to \textit{unload} dynamic libraries already loaded with the \textit{load} command. This TIP tries to add support for unloading libraries, by introducing a new Tcl command (\textit{unload}) and the guidelines that dynamic libraries must follow, in order to be unloadable. Note that the \textit{unload} command will operate only on libraries that are designed to be unloadable by their developers. This way backward compatibility with older extensions is maintained, as unload will never try to unload libraries unaware of this new functionality.
\\\hline\hline
\textbf{TIP \#101}:&\textbf{Export Tcltest Configuration}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&11 June 2002\\
Posting History:&
\\
&\\Abstract:&
Proposes public command \textit{tcltest::configure} to give programmatic control to processing configuration options of the tcltest package.
\\\hline\hline
\textbf{TIP \#102}:&\textbf{Change [trace list] to [trace info]}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Reinhard Max \tipmail{max}{suse.de}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&12 June 2002\\
Posting History:&
\\
Keywords:&trace, info, introspection\\
&\\Abstract:&
This TIP proposes to change the name of the introspection subcommand of the \textit{trace} command from \textit{list} to \textit{info}.
\\\hline\hline
\textbf{TIP \#103}:&\textbf{Argument Expansion Command}\\
Version:&\tipversion$Revision: 1.13 $\\
Authors:&Peter Spjuth \tipmail{peter.spjuth}{space.se}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par Andreas Leitgeb \tipmail{avl}{logic.at}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&15 June 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to add a command that can perform argument expansion in a safe and efficient manner.
\\\hline\hline
\textbf{TIP \#104}:&\textbf{Generalization of the Tk Undo Subsystem}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Ludwig Callewaert \tipmail{ludwig.callewaert}{belgacom.net}
\par Larry W. Virden. \tipmail{lvirden}{yahoo.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&19 June 2002\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
This TIP proposes a reimplementation of the Tk Text widget undo feature. The text widget interface is not affected. No functional changes are made at the Tcl level. The purpose of the reimplementation is to move the undo feature from a text only implementation to a general implementation also usable by other widgets. This opens the door to undoing also tag, mark and other operations, and allows for an exposure of the undo stack at the Tcl level. These new features are however not part of this TIP.
\\\hline\hline
\textbf{TIP \#105}:&\textbf{Add Prefix Matching for Switch}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal K. Fellows \tipmail{fellowsd}{cs.man.ac.uk}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&03 July 2002\\
Posting History:&
\\
Obsoleted By:&TIP \#195\\
&\\Abstract:&
This TIP adds a new option to the [switch] command to support matching of strings to unique prefixes of patterns, similar to Tcl's existing subcommand-name matching or Tk's option-name matching.
\\\hline\hline
\textbf{TIP \#106}:&\textbf{Add Encoding Abilities to the [dde] Command}\\
Version:&\tipversion$Revision: 1.14 $\\
Author:&Harald Oehlmann \tipmail{harald.oehlmann}{elmicron.de}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&13 August 2002\\
Posting History:&
\\
&\\Abstract:&
When using Windows DDE communication with non-Tcl programs, the encoding of the exchanged strings is mostly needed to be the system encoding. Selection of this behaviour should be possible with in the \textbf{dde} command should be done by a parameter.
\\\hline\hline
\textbf{TIP \#107}:&\textbf{Fix the 2-second "raise delay" in Tk}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Joe English \tipmail{jenglish}{flightlab.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.4\\
Vote:&Done\\
Created:&28 August 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP explains the genesis of the long delays often associated with the [raise] and [lower] commands under Unix/X with some window managers, as well as describing the solution.
\\\hline\hline
\textbf{TIP \#108}:&\textbf{Summary of Changes to Generic Tcl/Tk Code to Enable Mac OS X Port}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Jim Ingham \tipmail{jingham}{apple.com}
\\
State:&Final\\Type:&Informative\\
Vote:&No voting\\
Created:&29 August 2002\\
Posting History:&
\\
&\\Abstract:&
The submission of the changes to generic Tcl/Tk necessary for the Mac OS X port was discussed on the Tcl Core mailing list. In light of the very minor changes to shared code involved, and to facilitate including the port in the 8.4 release, it was decided that we would not hold a formal vote. This informational TIP is offered to summarize the work done, however, and to maintain a more complete record.
\\\hline\hline
\textbf{TIP \#109}:&\textbf{New Look for Checkbutton and Radiobutton on Unix}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Brian Griffin \tipmail{bgriffin}{model.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&01 October 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes changing the look of the Tk checkbutton and radiobutton widgets on Unix to more closely match the Windows counterparts.
\\\hline\hline
\textbf{TIP \#110}:&\textbf{Add a Tristate Mode to the Checkbutton and Radiobutton}\\
Version:&\tipversion$Revision: 1.12 $\\
Author:&Brian Griffin \tipmail{bgriffin}{model.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&01 October 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes adding a third value (tristate) to the checkbutton and radiobutton widgets and corresponding display.
\\\hline\hline
\textbf{TIP \#111}:&\textbf{Dictionary Values and Manipulators}\\
Version:&\tipversion$Revision: 1.12 $\\
Authors:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par David S. Cargo \tipmail{dcargo}{marix.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&05 October 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes adding a standard value format (and supporting commands) to Tcl that implements a value-to-value mapping, just as Tcl's list values can be regarded as implementing a number-to-value mapping.
\\\hline\hline
\textbf{TIP \#112}:&\textbf{Ensembles are Namespaces are Commands}\\
Version:&\tipversion$Revision: 2.28 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&10 October 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes unifying the concept of ensembles (from [Incr Tcl]) with namespaces and commands. It also adds control of command rewriting to allow for more efficient support for object systems like Snit.
\\\hline\hline
\textbf{TIP \#113}:&\textbf{Multi-Line Searches in the Text Widget}\\
Version:&\tipversion$Revision: 1.13 $\\
Author:&Vince Darley \tipmail{vincentdarley}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&11 October 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes enhancing the implementation of the \textit{\$textwidget search} subcommand to allow matching of both exact strings and regexp patterns which span multiple lines, and to allow reporting on all matches.
\\\hline\hline
\textbf{TIP \#114}:&\textbf{Eliminate Octal Parsing of Leading Zero Integer Strings}\\
Version:&\tipversion$Revision: 2.3 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Done\\
Created:&16 October 2007\\
Posting History:&
\\
Keywords:&octal\\
&\\Abstract:&
This TIP proposes elimination of Tcl's practice of using octal notation to interpret a string with a leading zero when an integer value is expected.
\\\hline\hline
\textbf{TIP \#115}:&\textbf{Making Tcl Truly 64-Bit Ready}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Pending\\
Created:&23 October 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes changes to Tcl to make it operate more effectively on 64-bit systems.
\\\hline\hline
\textbf{TIP \#116}:&\textbf{More Safety for Large Images}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&28 October 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP alters the C API for Tk's images so that failures to allocate sufficient memory for a large image can be handled more gracefully than a straight \textit{panic()}.
\\\hline\hline
\textbf{TIP \#117}:&\textbf{Object Type Introspection}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Peter Spjuth \tipmail{peter.spjuth}{space.se}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&01 November 2002\\
Posting History:&
\\
Obsoleted By:&TIP \#214\\
&\\Abstract:&
This TIP proposes to add a command to give information on the current internal representation of an object.
\\\hline\hline
\textbf{TIP \#118}:&\textbf{Enhance [file attributes] and [file copy] on Mac OS X \& BSD}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Daniel A. Steffen \tipmail{das}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&01 November 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a set of changes to \textit{[file attributes]} and \textit{[file copy]} to make them function better on MacOS X and other BSD-Unix systems.
\\\hline\hline
\textbf{TIP \#119}:&\textbf{Angled Text on a Canvas}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Simon Geard \tipmail{simon.geard}{ntlworld.com}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&18 November 2002\\
Posting History:&
\\
&\\Abstract:&
The current text object on a canvas does not support the creation of text strings at an arbitrary angle. For some applications this is limitation is sufficiently serious to disqualify Tk from use. This TIP removes this restriction.
\\\hline\hline
\textbf{TIP \#120}:&\textbf{Restricted DDE Services}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&04 December 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP will enhance the DDE package for use with safe interpreters and allow programmer control of the commands exposed by the DDE service.
\\\hline\hline
\textbf{TIP \#121}:&\textbf{Controlled Application Shutdown via Tcl\_Exit}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&05 December 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP will allow all applications to perform a controlled shutdown (or do nothing) in the event that \textit{Tcl\_Exit()} is called.
\\\hline\hline
\textbf{TIP \#122}:&\textbf{Use tcl\_{non,}wordchars Throughout Tcl/Tk}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Martin Weber \tipmail{ephaeton}{gmx.net}
\par Vince Darley \tipmail{vincentdarley}{users.sourceforge.net}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&12 December 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP shall bring flexible management of word and non-word chars to Tcl, to be used throughout the Tcl realm in e.g. [regexp]'s \(\backslash\)w \(\backslash\)W, Tk's [textwidget], [string] wordstart/wordend etc.
\\\hline\hline
\textbf{TIP \#123}:&\textbf{Adding an Exponentiation Operator to the [expr] Command}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Arjen Markus \tipmail{arjen.markus}{wldelft.nl}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&16 December 2002\\
Posting History:&
\\
Keywords:&mathematics, evaluation\\
&\\Abstract:&
This TIP proposes to add a new operator to the operators recognised by the [expr] command: the exponentiation operator. This operator will enhance the functionality of the current \textit{pow()} function by returning a result that depends on the type of its operands. It will also make complicated formulae more readable.
\\\hline\hline
\textbf{TIP \#124}:&\textbf{High-Resolution Absolute Time Values From [clock]}\\
Version:&\tipversion$Revision: 1.13 $\\
Authors:&Mark Harrison \tipmail{mh}{pixar.com}
\par Kevin Kenny \tipmail{kennykb}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&20 December 2002\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes altering the \textbf{clock clicks} command to add a \textbf{-microseconds} option, and to tie it to an absolute reference.
\\\hline\hline
\textbf{TIP \#125}:&\textbf{Converting between Frame and Toplevel Windows}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&Brian Griffin \tipmail{bgriffin}{model.com}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par Sacha Schär \tipmail{sacha.schaer}{unibas.ch}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&20 January 2003\\
Posting History:&
\\
Keywords:&reparent, Tk\\
&\\Abstract:&
This TIP modifies the \textbf{wm} command to act as a geometry manager for Frames, allowing them to become Toplevel windows.
\\\hline\hline
\textbf{TIP \#126}:&\textbf{Rich Strings for Representation Persistence}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Pending\\
Created:&30 January 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP enriches the standard UTF-8 string representation of every \textit{Tcl\_Obj} to allow for improved persistence of non-string representations. This, combined with rules for substring and substitution handling, allows the lifetime of an object to correspond far more closely with the more-broadly understood concept of ``object lifetime''.
\\\hline\hline
\textbf{TIP \#127}:&\textbf{Add an -index Option to [lsearch]}\\
Version:&\tipversion$Revision: 1.13 $\\
Author:&Michael Schlenker \tipmail{schlenk}{uni-oldenburg.de}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&26 February 2003\\
Posting History:&
\\
&\\Abstract:&
Matching the \textit{lsort} functionality a \textit{-index} option should be added to the \textit{lsearch} command to make searching lists in list easier. The \textit{lsort -index} and the \textit{lsearch -index} options should accept list style indices like \textit{lindex} and \textit{lset} do. This TIP proposes such added options.
\\\hline\hline
\textbf{TIP \#128}:&\textbf{Ability to Install a Custom Memory Allocator}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Christophe Cap \tipmail{udragon}{users.sourceforge.net}
\par Mike Jackson \tipmail{hhyJackson1275}{who-got-mail.com}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&13 March 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP alters Tcl to allow embedded uses of the Tcl library (and any extensions) to either use the Tcl memory allocators as their main allocator (especially in C++) or to set the memory allocator that Tcl uses for itself through \textit{ckalloc()}.
\\\hline\hline
\textbf{TIP \#129}:&\textbf{New Format Codes for the [binary] Command}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Arjen Markus \tipmail{arjen.markus}{wldelft.nl}
\par Torsten Reincke \tipmail{reincke}{typoscriptics.de}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&14 March 2003\\
Posting History:&
\\
Keywords:&IEEE, binary data, Tcl\\
&\\Abstract:&
This TIP proposes to add a set of new format codes to the \textbf{binary} command to enhance its ability to deal with especially non-native floating-point data. The assumption is that current limitations are due to the distinction between little-endian and big-endian storage of such data.
\\\hline\hline
\textbf{TIP \#130}:&\textbf{Unique DDE server names.}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&23 March 2003\\
Posting History:&
\\
&\\Abstract:&
The \textit{dde} package server registration code should ensure that the server names are unique. The proposed changes will mean end-user visible changes for some scripts.
\\\hline\hline
\textbf{TIP \#131}:&\textbf{Read My Mind and Do What I Mean}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Joe English \tipmail{jenglish}{flightlab.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&No voting\\
Created:&01 April 2003\\
Posting History:&
\\
&\\Abstract:&
A new Tcl command is proposed, \textit{rmmadwim}. This is an acronym for ``Read My Mind and Do What I Mean\(''\). This command has obvious utility.
\\\hline\hline
\textbf{TIP \#132}:&\textbf{Revised Floating-Point Conversions in Tcl}\\
Version:&\tipversion$Revision: 1.14 $\\
Authors:&Kevin Kenny \tipmail{kennykb}{acm.org}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&31 March 2003\\
Posting History:&
\\
Keywords:&floating point, IEEE, precision\\
&\\Abstract:&
This TIP proposes several changes to the conversion between floating point numbers and character strings. The changes are made to restore the ``everything is a string'' contract that Tcl implicitly makes; without them, there are observable differences in the behavior of floating point numbers, depending on the state of the internal representation.
\\\hline\hline
\textbf{TIP \#133}:&\textbf{Extending [expr] Operators}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Richard Suchenwirth \tipmail{Richard.Suchenwirth-Bauersachs}{siemens.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&08 April 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a way to define new operators for conditions and the \textbf{expr} command. It also includes demonstrations of how it might work in the examples: \textbf{in} tests inclusion in a list, and \textbf{and}, \textbf{or}, and \textbf{not} are aliases for ``\textbf{\&\&}'', ``\textbf{\tipbar{}\tipbar{}}'', ``\textbf{!}''.
\\\hline\hline
\textbf{TIP \#134}:&\textbf{Subsystem Per-Thread Data Interfaces}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Colin McCormack \tipmail{colin}{sharedtech.dyndns.org}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&12 May 2003\\
Posting History:&
\\
&\\Abstract:&
Tcl core subsystems per-thread data is good, because it modularises the core. None of the structures or access keys are exported, which is bad, because it makes modification to these subsystems difficult in a CVS world.
\\\hline\hline
\textbf{TIP \#135}:&\textbf{Change 'dde servername -exact' Option to -force}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&17 May 2003\\
Posting History:&
\\
Keywords:&dde\\
&\\Abstract:&
\cite{tip130} provides for unique DDE server name registration. This TIP renames one of the options it defines to better reflect its behaviour.
\\\hline\hline
\textbf{TIP \#136}:&\textbf{Large List Initialisation}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Simon Geard \tipmail{simon.geard}{ntlworld.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&25 May 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes the addition of a list initialisation command so that large lists can be easily and efficiently initialised.
\\\hline\hline
\textbf{TIP \#137}:&\textbf{Specifying Script Encodings for [source] and tclsh}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Anton Kovalenko \tipmail{a_kovalenko}{fromru.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&29 May 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a way to specify encoding used to read a script with \textit{source} command and (tclsh, wish) shell.
\\\hline\hline
\textbf{TIP \#138}:&\textbf{New TCL\_HASH\_KEY\_SYSTEM\_HASH option for Tcl hash tables}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Kevin Kenny \tipmail{kennykb}{acm.org}
\par Joe Mistachkin \tipmail{joe}{mistachkin.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&29 May 2003\\
Posting History:&
\\
Keywords:&thread specific data, hash table, memory allocation\\
&\\Abstract:&
This TIP proposes a new flag in the Tcl hash table API in support of a proposed rework of thread-specific data management.
\\\hline\hline
\textbf{TIP \#139}:&\textbf{Publish Part of Tcl's Namespace API}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&03 June 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP makes the simpler parts of Tcl's Namespace API available to the general C-coding public.
\\\hline\hline
\textbf{TIP \#140}:&\textbf{Tracing Namespace Modifications}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Deferred\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&04 June 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP allows scripts to register callbacks to monitor alterations to namespaces, such as their deletion, the creation, renaming and deletion of commands within the namespace and modifications to the exports list of the namespace.
\\\hline\hline
\textbf{TIP \#141}:&\textbf{Multiple Initial-Files in [tk\_getOpenFile]}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&David N. Welton \tipmail{davidw}{dedasys.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&18 July 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes modifying the semantics of the \textbf{-initialfile} option when the \textbf{tk\_get*File} commands are asked to select multiple files so as to allow several files to be selected initially.
\\\hline\hline
\textbf{TIP \#142}:&\textbf{Search Path Variable to Lookup Command Names in Namespaces}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Ulrich Schoebel \tipmail{ulrich.schoebel}{sigos.de}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&23 July 2003\\
Posting History:&
\\
Keywords:&namespace, command lookup, search path\\
&\\Abstract:&
This TIP adds a Tcl variable to define the search path for command name lookup across namespaces.
\\\hline\hline
\textbf{TIP \#143}:&\textbf{An Interpreter Resource Limiting Framework}\\
Version:&\tipversion$Revision: 1.13 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&25 July 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP introduces a mechanism for creating and manipulating per-interpreter resource limits. This stops several significant classes of denial-of-service attack, and can also be used to do things like guaranteeing an answer within a particular amount of time.
\\\hline\hline
\textbf{TIP \#144}:&\textbf{Argument Expansion Syntax}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Peter Spjuth \tipmail{peter.spjuth}{space.se}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par \tipmail{dgp}{users.sf.net}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&26 July 2003\\
Posting History:&
\\
Obsoleted By:&TIP \#157\\
&\\Abstract:&
This TIP proposes to add syntax in Tcl to perform argument expansion in a safe and efficient manner.
\\\hline\hline
\textbf{TIP \#145}:&\textbf{Enhanced Tk Font Handling}\\
Version:&\tipversion$Revision: 1.10 $\\
Author:&Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&31 July 2003\\
Posting History:&
\\
Obsoletes:&TIP \#64\\
&\\Abstract:&
\cite{tip64} suggests some improvements to font handling under windows. However, not all of this TIP appears to have been implemented and I believe this can be done better using the Tk named fonts mechanism.
\\\hline\hline
\textbf{TIP \#146}:&\textbf{Add Overall Anchoring to the Grid Geometry Manager}\\
Version:&\tipversion$Revision: 1.16 $\\
Author:&Peter Spjuth \tipmail{peter.spjuth}{space.se}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&05 August 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to add an anchor option to grid managers to control the behaviour of a grid where all weights are zero.
\\\hline\hline
\textbf{TIP \#147}:&\textbf{Make Grid's Column/Row Configure Easier}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Peter Spjuth \tipmail{peter.spjuth}{space.se}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&05 August 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to add an alternative way to state which columns/rows in a grid are affected by an column/rowconfigure command.
\\\hline\hline
\textbf{TIP \#148}:&\textbf{Correct [list]-Quoting of the '\#' Character}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&08 August 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes the correction of a long-standing bug in the [list]-quoting of the \textit{\#} character.
\\\hline\hline
\textbf{TIP \#149}:&\textbf{Allow "enabled" as Synonym for "normal" in -state Option}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Michael A. Cleverly \tipmail{michael}{cleverly.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&13 August 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP allows Tk widgets which have a configurable \textit{-state} option to accept \textit{enabled} as a synonym for \textit{normal}.
\\\hline\hline
\textbf{TIP \#150}:&\textbf{Implement the Tk send Command for Windows}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\\
State:&Deferred\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&25 July 2003\\
Posting History:&
\\
Keywords:&tk, send\\
&\\Abstract:&
This TIP proposes to provide an implementation of the send mechanism for Tk under Windows.
\\\hline\hline
\textbf{TIP \#151}:&\textbf{Remove -e: Command Line Option from tclsh and wish}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Don Porter \tipmail{dgp}{users.sf.net}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&22 August 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes removal of the -e: command line option to tclsh and wish that was Accepted as part of \cite{tip137}.
\\\hline\hline
\textbf{TIP \#152}:&\textbf{New -detail Option for tk\_messageBox}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Mats Bengtsson \tipmail{matben}{privat.utfors.se}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&26 August 2003\\
Posting History:&
\\
Obsoletes:&TIP \#25\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes a new option for the \textbf{tk\_messageBox} for text that is less significant than the \textbf{-message} text.
\\\hline\hline
\textbf{TIP \#153}:&\textbf{Enhancing the [winfo toplevel] Command}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Neil McKay \tipmail{mckay}{eecs.umich.edu}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&26 August 2003\\
Posting History:&
\\
&\\Abstract:&
The [winfo toplevel] command returns the Tk toplevel window that encloses the window that's passed as an argument. However, Tk extensions may allow the creation of windows which reside at the top of a window hierarchy, but are not Tk toplevel widgets. If a subwindow of one of these top-of-hierarchy widgets is passed to [winfo toplevel], it returns an empty string, making it impossible to determine what hierarchy the window resides in. This TIP proposes enhancing the [winfo toplevel] command so that it will return the top window in the hierarchy regardless of what type of widget it is.
\\\hline\hline
\textbf{TIP \#154}:&\textbf{Add Named Colors to Tk}\\
Version:&\tipversion$Revision: 1.26 $\\
Author:&Damon Courtney \tipmail{damon}{unreality.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&03 September 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes the addition of a \textbf{color} command at the Tk level to allow developers to create named colors as they can already do with both fonts and images.
\\\hline\hline
\textbf{TIP \#155}:&\textbf{Fix Some of the Text Widget's Limitations}\\
Version:&\tipversion$Revision: 1.23 $\\
Author:&Vince Darley \tipmail{vince}{santafe.edu}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&08 September 2003\\
Posting History:&
\\
&\\Abstract:&
Tk's text widget is very powerful, but has a number of known limitations. In particular the entire handling of wrapped lines and 'display/visual entities' versus 'logical entities' is quite limited. The most obvious side-effect of these inadequacies is the 'scrollbar problem' (in which, particularly when there are long wrapped lines in the widget, the vertical scrollbar slider changes in size depending on the number of logical lines currently displayed, see \url{http://mini.net/tcl/896} for example). This TIP overhauls the widget to provide consistent, complete support for 'display lines', 'display indices' and as a consequence smooth, pixel-based scrolling. A few other small bugs/issues have also been resolved.
\\\hline\hline
\textbf{TIP \#156}:&\textbf{Language-Neutral Root Locale for Msgcat}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&20 September 2003\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
This TIP proposes to extend Tcl's message catalog mechanism by adding a ``root locale'' (whose name is the empty string) that is searched after searches in all the language-dependent locales have failed.
\\\hline\hline
\textbf{TIP \#157}:&\textbf{Argument Expansion with Leading {expand}}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Kevin B. Kenny \tipmail{kennykb}{acm.org}
\par Peter Spjuth \tipmail{peter.spjuth}{space.se}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&20 September 2003\\
Posting History:&
\\
Obsoletes:&TIP \#144\\
&\\Abstract:&
This TIP proposes to add syntax in Tcl to perform argument expansion in a safe and efficient manner.
\\\hline\hline
\textbf{TIP \#158}:&\textbf{Distinguish the two 'Enter' keys on Windows}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Wolfgang Großbauer \tipmail{Go2DevNull}{magro-soft.com}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&20 September 2003\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
This TIP proposes that the ``extended keys'' on a Windows keyboard be labeled with \tiplangle{}Mod4\tiprangle{} so that they can be distinguished from their counterparts on the main keyboard.
\\\hline\hline
\textbf{TIP \#159}:&\textbf{Extending Tk 'wm' Command to Support Coloured Icons}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Georgios Petasis \tipmail{petasis}{iit.demokritos.gr}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&01 October 2003\\
Posting History:&
\\
&\\Abstract:&
Currently, Tk lacks a mechanism for allowing scripts to place colour icons in the window manager decorations of a toplevel window. Tk supports only the placement of monochrome bitmaps through the \textit{wm iconbitmap} and \textit{wm iconmask} commands. This TIP proposes an extension of the \textit{wm} command with the \textit{iconphoto} subcommand, which will pass a set of photo images as possible window manager icons.
\\\hline\hline
\textbf{TIP \#160}:&\textbf{Improvements to Terminal and Serial Channel Handling}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&17 October 2003\\
Posting History:&
\\
&\\Abstract:&
Terminals and other kinds of serial lines have other capabilities and requirements that are not currently controllable using Tcl. This TIP adds new options to [fconfigure] to allow these advanced capabilities to be supported within Tcl in a straight-forward way.
\\\hline\hline
\textbf{TIP \#161}:&\textbf{Change Default for Menu's -tearoff Option to False}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Mark Roseman \tipmail{mark}{markroseman.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Pending\\
Created:&19 October 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes changing the default value of the \textit{-tearoff} option on menu widgets to false, from its current setting of true.
\\\hline\hline
\textbf{TIP \#162}:&\textbf{IPv6 Sockets for Tcl}\\
Version:&\tipversion$Revision: 1.16 $\\
Authors:&Rafael Martínez Torres \tipmail{rafael.martinez}{novagnet.com}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\par Reinhard Max \tipmail{max}{tclers.tk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&23 October 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP is about allowing Tcl to use IPv6 sockets in virtually the same way that you would use the current (IPv4) sockets.
\\\hline\hline
\textbf{TIP \#163}:&\textbf{A [dict merge] Subcommand}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Joe English \tipmail{jenglish}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&14 November 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a new [dict] subcommand which is used to combine multiple dictionaries.
\\\hline\hline
\textbf{TIP \#164}:&\textbf{Add Rotate Subcommand to the Canvas Widget}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Arjen Markus \tipmail{arjen.markus}{wldelft.nl}
\par Dimitrios Zachariadis \tipmail{dzach}{hol.gr}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&17 November 2003\\
Posting History:&
\\
Keywords:&Tk, canvas\\
&\\Abstract:&
This TIP proposes to add a \textit{rotate} subcommand to the canvas widget to facilitate rotating items in very much the same way as is now possible with scaling and moving.
\\\hline\hline
\textbf{TIP \#165}:&\textbf{A User-Data Field for Virtual Events}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&17 November 2003\\
Posting History:&
\\
Keywords:&Tk, substitution\\
&\\Abstract:&
This TIP proposes adding to virtual events a new field that is not interpreted by Tk. This will make it far easier for user-code to pass information between creators and consumers of events instead of forcing the use of fragile global variables for this purpose.
\\\hline\hline
\textbf{TIP \#166}:&\textbf{Reading and Writing the Photo Image Alpha Channel}\\
Version:&\tipversion$Revision: 1.12 $\\
Authors:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par Simon Bachmann \tipmail{simonbachmann}{bluewin.ch}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&19 November 2003\\
Posting History:&
\\
Keywords:&Tk, image get, image put\\
&\\Abstract:&
This TIP describes how to update the \textbf{image get} and \textbf{image put} subcommands so as to allow script-level access to the full alpha channel information that has been present in the photo image data model since Tk 8.3.
\\\hline\hline
\textbf{TIP \#167}:&\textbf{Add a New Option for Context Help for Windows}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Ramon Rib\'{o} \tipmail{ramsan}{cimne.upc.es}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&19 November 2003\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes adding a new option to \textbf{wm attributes} for the Windows version of Tk that offers contextual help in that window. Additionally, a new event type \textbf{\tiplangle{}Help\tiprangle{}} is defined, that will be delivered when the user picks the Help button in the window and picks over a widget. The event will be also hitted when user presses F1 over one window.
\\\hline\hline
\textbf{TIP \#168}:&\textbf{Cubic Bezier Curves on the Canvas}\\
Version:&\tipversion$Revision: 1.10 $\\
Author:&Lars Hellström \tipmail{Lars.Hellstrom}{math.umu.se}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&25 January 2004\\
Posting History:&
\\
&\\Abstract:&
This document proposes a new \textbf{-smooth} method for \textbf{line} and \textbf{polygon} canvas items that supports cubic Bezier curves and clarifies some of the existing terminology in that area.
\\\hline\hline
\textbf{TIP \#169}:&\textbf{Add Peer Text Widgets}\\
Version:&\tipversion$Revision: 1.15 $\\
Authors:&Brian Griffin \tipmail{bgriffin}{model.com}
\par Vince Darley \tipmail{vincentdarley}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&28 January 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes adding a method to the text widget that will create peer text widgets, allowing two or more text widgets to share the same text, tags, and marks.
\\\hline\hline
\textbf{TIP \#170}:&\textbf{Better Support for Nested Lists}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Sergey Babkin \tipmail{babkin}{freebsd.org}
\par Don Porter \tipmail{dgp}{users.sf.net}
\par Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&30 January 2004\\
Posting History:&
\\
&\\Abstract:&
Nested lists are easy to create with Tcl but then manipulating them is not easy. For example, think about how to change a value nested in a list 2 levels deep? How about 4 levels deep? The proposed new commands make such manipulation easy, and make the nested lists a great replacement for arrays and structures in C-like languages.
\\\hline\hline
\textbf{TIP \#171}:&\textbf{Change Default \tiplangle{}MouseWheel\tiprangle{} Bindings Behavior}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&Jeff Hobbs \tipmail{jeffh}{activestate.com}
\par Keith Vetter \tipmail{kvetter}{alltel.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&05 March 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes changing the default \tiplangle{}MouseWheel\tiprangle{} bindings in Tk to have ``better'' behaved defaults for a larger set of applications.
\\\hline\hline
\textbf{TIP \#172}:&\textbf{Improve UNIX Tk Look and Feel}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&David N. Welton \tipmail{davidw}{dedasys.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&No voting\\
Created:&08 March 2004\\
Posting History:&
\\
Obsoleted By:&TIP \#248\\
&\\Abstract:&
In the spirit of ``worse is better'', this TIP proposes a simple way to notably improve Tk's look and feel for the 8.5 release of Tk. It does not fix all the problems, and won't make Tk look like whatever toolkit is ``native'' on the user's machine (Gtk or Qt), but will at least improve the current situation.
\\\hline\hline
\textbf{TIP \#173}:&\textbf{Internationalisation and Refactoring of the 'clock' Command}\\
Version:&\tipversion$Revision: 1.22 $\\
Author:&Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&11 March 2004\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
The [clock] command provides Tcl's fundamental facilities for computing with dates and times. It has served Tcl faithfully since 7.6, but the computing world has advanced significantly in the decade that it has been in service. This TIP proposes a (nearly entirely compatible) reimplementation of [clock] that will allow for fewer ambiguities on input, improved localisation, more portability, and less exposure of platform-dependent bugs. A significantly greater fraction of [clock] shall be implemented in Tcl than it is today, and the code shall be refactored to use the ensemble mechanism introducted for Tcl 8.5 (see \cite{tip112}).
\\\hline\hline
\textbf{TIP \#174}:&\textbf{Math Operators as Commands}\\
Version:&\tipversion$Revision: 1.21 $\\
Authors:&Kristoffer Lawson \tipmail{setok}{altparty.org}
\par Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par David S. Cargo \tipmail{escargo}{skypoint.com}
\par Peter Spjuth \tipmail{peter.spjuth}{space.se}
\par Kevin B. Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&15 March 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP describes a proposal for math operators in Tcl as separate commands, acting much like the equivalent in the Lisp language. This would make simple usage of mathematics much clearer.
\\\hline\hline
\textbf{TIP \#175}:&\textbf{Add an -async Option to [open]}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Neil Madden \tipmail{nem}{cs.nott.ac.uk}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Pending\\
Created:&15 March 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP propose to add an \textit{-async} option to the [open] command, with identical semantics to the \textit{-async} option to the [socket] command.
\\\hline\hline
\textbf{TIP \#176}:&\textbf{Add String Index Values}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Damon Courtney \tipmail{damon}{unreality.com}
\par Don Porter \tipmail{dgp}{users.sf.net}
\par Damon Courtney \tipmail{damon-tcl}{tclhome.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&16 March 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes extended index formats to be recognized by \textbf{TclGetIntForIndex}, supporting simple index arithmetic for string and list indices.
\\\hline\hline
\textbf{TIP \#177}:&\textbf{Add -stretch Option to panedwindow Widget}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Brian Griffin \tipmail{bgriffin}{model.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&17 March 2004\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes adding a \textbf{paneconfigure} option to \textbf{panedwindow}s that will allow alternative fill behavior.
\\\hline\hline
\textbf{TIP \#178}:&\textbf{[info pid] and [info tid] Subcommands}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&21 March 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes two new \textbf{info} subcommands which are used to obtain the current process and thread identifiers.
\\\hline\hline
\textbf{TIP \#179}:&\textbf{Add -hide Option to panedwindow Widget}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Brian Griffin \tipmail{bgriffin}{model.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&22 March 2004\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes adding a \textbf{paneconfigure} option to \textbf{panedwindow}s that will control pane visibility.
\\\hline\hline
\textbf{TIP \#180}:&\textbf{Add a Megawidget Support Core Package}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Damon Courtney \tipmail{damon}{unreality.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&22 March 2003\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes the addition of a ``megawidget'' package to Tk as a core package which contains a set of functions useful for building megawidgets with standard script-level behaviour in Tk.
\\\hline\hline
\textbf{TIP \#181}:&\textbf{Add a [namespace unknown] Command}\\
Version:&\tipversion$Revision: 1.33 $\\
Author:&Neil Madden \tipmail{nem}{cs.nott.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&23 March 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposing adding a new \textbf{namespace} subcommand, \textbf{unknown}, which would register a per-namespace procedure for dealing with unknown commands.
\\\hline\hline
\textbf{TIP \#182}:&\textbf{Add [expr bool] Math Function}\\
Version:&\tipversion$Revision: 1.16 $\\
Authors:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&23 March 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a new \textbf{expr} math function \textbf{bool()}.
\\\hline\hline
\textbf{TIP \#183}:&\textbf{Add a Binary Flag to [open]}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&Andreas Leitgeb \tipmail{avl}{logic.at}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&24 March 2004\\
Posting History:&
\\
Keywords:&Tcl\\
&\\Abstract:&
To handle binary files, one currently has to open the file, and then in a second step \textbf{fconfigure} it with \textbf{-translation binary}. This TIP proposes to add a flag ``b'' to open's \textit{access}-argument to set initial translation to binary (rather than auto).
\\\hline\hline
\textbf{TIP \#184}:&\textbf{Avoid Creating Unusable Variables}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Miguel Sofer \tipmail{msofer}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&27 March 2004\\
Posting History:&
\\
Keywords:&Tcl, upvar, global\\
&\\Abstract:&
Both \textbf{upvar} and \textbf{global} can create unreachable variables: scalar variables whose name looks like an array element, e.g., a(b). This behaviour is documented in the \textbf{upvar} manpage. This TIP proposes that both \textbf{upvar} and \textbf{global} raise errors instead of creating such variables.
\\\hline\hline
\textbf{TIP \#185}:&\textbf{Null Handling}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&John H. Harris \tipmail{JHHarris}{valley.net}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&08 April 2004\\
Posting History:&
\\
Keywords:&Tcl, absent value\\
&\\Abstract:&
Tcl lacks the ability to handle \textit{nulls}, data with missing or unknown values. In this TIP I suggest a means for representing and propagating nulls, and command modifications for manipulating them.
\\\hline\hline
\textbf{TIP \#186}:&\textbf{Expose the Type and Modified-State of Widget Options}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Peter MacDonald \tipmail{pmacdona}{pdqi.com}
\par Peter MacDonald \tipmail{peter}{pdqi.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&16 April 2004\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP adds a 6th (and 7th element) to each option in the output of [\textit{path} \textbf{configure}] for Tk widgets, indicating the type and modified status of each option respectively.
\\\hline\hline
\textbf{TIP \#187}:&\textbf{Procedures as Values}\\
Version:&\tipversion$Revision: 1.14 $\\
Authors:&Salvatore Sanfilippo \tipmail{antirez}{invece.org}
\par Miguel Sofer \tipmail{msofer}{users.sf.net}
\par Paul Nash \tipmail{webscool}{ihug.co.nz}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&20 April 2004\\
Posting History:&
\\
Keywords:&Tcl, lambda, anonymous, command, function\\
&\\Abstract:&
This TIP describes a change in the semantics of Tcl to allow procedures to be first class values, being represented as strings, and in particular as three element lists.
\\\hline\hline
\textbf{TIP \#188}:&\textbf{Add 'string is wideinteger' to the 'string is' Subcommand}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&23 April 2004\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
Keywords:&Tcl\\
&\\Abstract:&
The \textbf{string} command supports tests for a number of Tcl's basic types, for example, integers, doubles, and booleans. This TIP proposes adding wide integers.
\\\hline\hline
\textbf{TIP \#189}:&\textbf{Tcl Modules}\\
Version:&\tipversion$Revision: 1.13 $\\
Authors:&Andreas Kupries \tipmail{akupries}{shaw.ca}
\par Jean-Claude Wippler \tipmail{jcw}{equi4.com}
\par Jeff Hobbs \tipmail{jeffh}{activestate.com}
\par Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\par Daniel A. Steffen \tipmail{das}{users.sourceforge.net}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&24 March 2004\\
Posting History:&
\\
&\\Abstract:&
This document describes a new mechanism for the handling of packages by the Tcl Core which differs from the existing system in important details and makes different trade-offs with regard to flexibility of package declarations and to access to the filesystem. This mechanism is called ``Tcl Modules''.
\\\hline\hline
\textbf{TIP \#190}:&\textbf{Implementation Choices for Tcl Modules}\\
Version:&\tipversion$Revision: 1.3 $\\
Authors:&Andreas Kupries \tipmail{akupries}{shaw.ca}
\par Jean-Claude Wippler \tipmail{jcw}{equi4.com}
\par Jeff Hobbs \tipmail{jeffh}{activestate.com}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&24 March 2004\\
Posting History:&
\\
&\\Abstract:&
This document is an informational adjunct to \cite{tip189} ``Tcl Modules'', describing a number of choices for the implementation of Tcl Modules, pure-Tcl, binary, or mixed. It lists these choices and then discusses their relative merits and problems, especially their interaction with wrapping, i.e. when used in a wrapped application. The main point of the document is to dispel the illusion that the restriction to the ``source'' command for the loading Tcl Modules is an actual limitation. A secondary point is to make recommendations regarding preferred implementations, based the merits and weaknesses of the various possibilities.
\\\hline\hline
\textbf{TIP \#191}:&\textbf{Managing Tcl Packages and Modules in a Multi-Version Environment}\\
Version:&\tipversion$Revision: 1.3 $\\
Authors:&Andreas Kupries \tipmail{akupries}{shaw.ca}
\par Joe English \tipmail{jenglish}{users.sourceforge.net}
\par Larry Virden \tipmail{lvirden}{yahoo.com}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&24 March 2004\\
Posting History:&
\\
&\\Abstract:&
This document is an informational adjunct to \cite{tip189} ``Tcl Modules'', describing a number of choices for the management of Tcl Modules in environments with more than one version of the Tcl core installed. It lists these choices and then discusses their relative merits and problems.
\\\hline\hline
\textbf{TIP \#192}:&\textbf{Lazy Lists}\\
Version:&\tipversion$Revision: 1.2 $\\
Authors:&Salvatore Sanfilippo \tipmail{antirez}{invece.org}
\par Theo Verelst \tipmail{theover}{tiscali.nl}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Pending\\
Created:&27 March 2004\\
Posting History:&
\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes to add a new command to generate lists of \textit{N} elements, where the \textit{i}-th element is computed as the result of an unary Tcl procedure with \textit{i} as itsargument. Implementing special handling for this kind of lists inside the Tcl core will allow generation of lists in a \textit{lazy} way. This TIP's goal is not to change the semantics of Tcl, but just to provide a different space complexity for an (often interesting) subset of Tcl lists.
\\\hline\hline
\textbf{TIP \#193}:&\textbf{Simple Syntax Help System}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&29 April 2004\\
Posting History:&
\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes a simple scheme to allow commands to provide basic syntax help for themselves. This information would allow for more advanced processing by programs doing interactive input of Tcl commands (by providing a mechanism for them to discover what possible completions of the current command fragment are available) and could be processed automatically by the \textbf{interp alias} and \textbf{namespace ensemble} mechanisms so that help could be automatically extended to commands defined through those mechanisms.
\\\hline\hline
\textbf{TIP \#194}:&\textbf{Procedures as Values via '''apply'''}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Miguel Sofer \tipmail{msofer}{users.sf.net}
\par Joe Mistachkin \tipmail{joe}{mistachkin.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&30 April 2004\\
Posting History:&
\\
Keywords:&Tcl, lambda, anonymous, command, function, functional programming\\
&\\Abstract:&
This TIP proposes a new command, tentatively named \textbf{apply}, to allow procedures to be first class values. It is an alternative to the approach of \cite{tip187}, where attaining a similar goal requires a syntactic and semantic change.
\\\hline\hline
\textbf{TIP \#195}:&\textbf{A Unique Prefix Handling Command}\\
Version:&\tipversion$Revision: 1.18 $\\
Authors:&Peter Spjuth \tipmail{peter.spjuth}{space.se}
\par Peter Spjuth \tipmail{peter.spjuth}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&02 May 2004\\
Posting History:&
\\
Obsoletes:&TIP \#105\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP adds a new command to support matching of strings to unique prefixes of patterns, similar to Tcl's existing subcommand-name matching or Tk's option-name matching.
\\\hline\hline
\textbf{TIP \#196}:&\textbf{Tcl Commands as Values}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Robert Suetterlin \tipmail{robert}{mpe.mpg.de}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&11 May 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes making command procedures first-class values in Tcl. It also changes the command binding scheme to recognize these values before performing old-style name lookup indirection.
\\\hline\hline
\textbf{TIP \#197}:&\textbf{Unfocussed Text Widget Cursor Control}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&R. Timothy Edwards \tipmail{tim}{stravinsky.jhuapl.edu}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&12 May 2004\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes a simple extension to the Tk text widget to allow the insertion cursor to persist when the window containing the text widget does not have focus.
\\\hline\hline
\textbf{TIP \#198}:&\textbf{Image Command XPM Extension}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&R. Timothy Edwards \tipmail{tim}{stravinsky.jhuapl.edu}
\par Don Porter \tipmail{dgp}{users.sf.net}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&12 May 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes an extension to the Tk \textbf{image} command to incorporate color pixmap images based on the XPM format. The format is analogous to the \textbf{bitmap} option (\textit{tkImgBmap.c} in the Tk source).
\\\hline\hline
\textbf{TIP \#199}:&\textbf{Specification of Alternatives to .wishrc/.tclshrc}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&R. Timothy Edwards \tipmail{tim}{stravinsky.jhuapl.edu}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&12 May 2004\\
Posting History:&
\\
Keywords:&Tcl, Tk, shell, interactive\\
&\\Abstract:&
This TIP describes an extension of the command-line options to the ``wish'' and ``tclsh'' programs to allow the startup script to be redirected from the default \~{}/.wishrc (or \~{}/.tclshrc) to an alternative file.
\\\hline\hline
\textbf{TIP \#200}:&\textbf{Listing the Values in an Array}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par Dossy Shiobara \tipmail{dossy}{panoptic.com}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&20 May 2004\\
Posting History:&
\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes adding another subcommand to the \textbf{array} command to list the values in an array.
\\\hline\hline
\textbf{TIP \#201}:&\textbf{Add 'in' Operator to [expr]}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Jeff Hobbs \tipmail{jeffh}{activestate.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&21 May 2004\\
Posting History:&
\\
Keywords:&Tk, list membership, sets\\
&\\Abstract:&
This TIP proposes new \textbf{expr} operators ``\textbf{in}'' and ``\textbf{ni}'' that simplifies the standard ``does this item exist in list'' \textbf{lsearch} case in expressions, with ``\textbf{ni}'' being ``not in''.
\\\hline\hline
\textbf{TIP \#202}:&\textbf{Add 2\tiprangle{}@1 Special Case to [open] and [exec]}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Jeff Hobbs \tipmail{jeffh}{activestate.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&19 May 2004\\
Posting History:&
\\
Keywords:&Tcl, redirection\\
&\\Abstract:&
This TIP proposes adding a new redirection case '2\tiprangle{}@1' that redirects the error channel to the output channel in \textbf{open} and \textbf{exec}. This would only be valid at the end of a pipeline.
\\\hline\hline
\textbf{TIP \#203}:&\textbf{Create tclConfig.sh-Equivalent in Tcl}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&Colin McCormack \tipmail{coldstore}{users.sourceforge.net}
\par Don Porter \tipmail{dgp}{users.sf.net}
\par Colin McCormack \tipmail{colin}{sharedtech.dyndns.org}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&17 June 2004\\
Posting History:&
\\
Discussions To:&http://mini.net/tcl/tclConfig.sh\\
Keywords:&configuration, installation\\
&\\Abstract:&
This proposal requires the registration of information about the built process, currently stored in tclConfig.sh, by means of the Tcl\_RegisterConfig mechanism set out in [Tip 59].
\\\hline\hline
\textbf{TIP \#204}:&\textbf{Virtual Events for Keyboard Traversal}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Joe English \tipmail{jenglish}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&21 June 2004\\
Posting History:&
\\
&\\Abstract:&
Proposes using two new virtual events, \textbf{\tiplangle{}\tiplangle{}TraverseIn\tiprangle{}\tiprangle{}} and \textbf{\tiplangle{}\tiplangle{}TraverseOut\tiprangle{}\tiprangle{}}, to notify widgets of keyboard navigation events.
\\\hline\hline
\textbf{TIP \#205}:&\textbf{Use pkgconfig Database to Register Xft Support}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Joe English \tipmail{jenglish}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&23 June 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to use Tcl's package configuration database (see \cite{tip59}) to register whether Tk was compiled with support for Xft.
\\\hline\hline
\textbf{TIP \#206}:&\textbf{Add an [ftruncate] Command}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&25 June 2004\\
Posting History:&
\\
Obsoleted By:&TIP \#208\\
&\\Abstract:&
This TIP proposes a new command \textbf{ftruncate} for truncating open files.
\\\hline\hline
\textbf{TIP \#207}:&\textbf{Add a -namespace Option to [interp invokehidden]}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&29 June 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a \textit{-namespace} option for the \textbf{interp invokehidden} subcommand to allow hidden commands to be invoked in the specified namespace context in the slave interpreter.
\\\hline\hline
\textbf{TIP \#208}:&\textbf{Add a 'chan' Command}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Jeff Hobbs \tipmail{jeffh}{activestate.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&02 July 2004\\
Posting History:&
\\
Obsoletes:&TIP \#206\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes adding a \textbf{chan} command that would serve as a top-level command container for all the related channel commands that have proliferated over time, as well as future new channel-based commands.
\\\hline\hline
\textbf{TIP \#209}:&\textbf{Add [clock milliseconds], and [clock microseconds]}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Reinhard Max \tipmail{max}{tclers.tk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&12 July 2004\\
Posting History:&
\\
Keywords:&clock, milliseconds, microseconds\\
&\\Abstract:&
This TIP proposes to replace \textbf{clock clicks -milliseconds} by \textbf{clock milliseconds} and \textbf{clock clicks -microseconds} by \textbf{clock microseconds}.
\\\hline\hline
\textbf{TIP \#210}:&\textbf{Add 'tempfile' Subcommand to 'file'}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&Bob Techentin \tipmail{techentin.robert}{mayo.edu}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&19 July 2004\\
Posting History:&
\\
Keywords:&Tcl, filename\\
&\\Abstract:&
Programmers often need to create temporary files. This TIP proposes adding the new subcommand \textbf{tempfile} to the \textbf{file} command, simplifying programmer effort in creating a unique temporary file name.
\\\hline\hline
\textbf{TIP \#211}:&\textbf{Add Full Stack Trace Capability}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Robert Seeger \tipmail{robert_seeger}{users.sourceforge.net}
\par Robert Seeger \tipmail{rseeger00}{aol.com}
\par Don Porter \tipmail{dgp}{users.sourceforge.net}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&10 August 2004\\
Posting History:&
\\
Obsoleted By:&TIP \#280\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes adding a new subcommand to the \textbf{info} command to get a list of all the frames on the current stack, rather than the limited list returned by \textbf{info level}.
\\\hline\hline
\textbf{TIP \#212}:&\textbf{Temporarily Opening out a Dictionary}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&11 August 2004\\
Posting History:&
\\
Keywords:&tcl, dict, update, script\\
&\\Abstract:&
This TIP proposes a new subcommand of \textbf{dict} that associates variables with dictionary entries while a Tcl script (the ``body'' of the command) runs.
\\\hline\hline
\textbf{TIP \#213}:&\textbf{A Standard Dialog for Font Selection}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\par Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Pending\\
Created:&21 August 2004\\
Posting History:&
\\
Obsoleted By:&TIP \#324\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes a new command that pops up a dialog box that allows the selection of a font. Where possible, this dialog will be implemented using the host platform's standard dialogs.
\\\hline\hline
\textbf{TIP \#214}:&\textbf{Add New Object Introspection Command}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Ulrich Schöbel \tipmail{usus}{aladyn.de}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&24 August 2004\\
Posting History:&
\\
Obsoletes:&TIP \#117\\
Keywords:&Tcl, info, representation\\
&\\Abstract:&
This TIP proposes the new \textbf{representation} subcommand to \textbf{info} which returns the internal representation of a variable's contents.
\\\hline\hline
\textbf{TIP \#215}:&\textbf{Make [incr] Auto-Initialize Undefined Variables}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&Andreas Leitgeb \tipmail{avl}{logic.at}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&25 August 2004\\
Posting History:&
\\
Keywords:&Tcl\\
&\\Abstract:&
Unlike \textbf{append} and \textbf{lappend}, \textbf{incr} currently does not auto-create yet-undefined variables. This TIP proposes to make \textbf{incr}'s behaviour in this regard more like the aforementioned commands.
\\\hline\hline
\textbf{TIP \#216}:&\textbf{Handling Command-Line Options in Tclsh and Wish}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Arjen Markus \tipmail{arjen.markus}{wldelft.nl}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&23 August 2004\\
Posting History:&
\\
Keywords:&Tcl, debugging, argument, shell\\
&\\Abstract:&
Currently there is no means to add new command-line options to the standard Tcl shells, tclsh and wish, that can be handled at the script level. This hampers the development of, for instance, a scripted debugger or tracing tool, because the shell must be called with an awkward command line (stating the location of the script file implementing the facility). This TIP proposes a simple mechanism so that a command line like ``tclsh -debug myprog.tcl'' is possible. The new mechanism relies on the existing package mechanism and a few conventions. It can be implemented for the most part in Tcl.
\\\hline\hline
\textbf{TIP \#217}:&\textbf{Getting Sorted Indices out of Lsort}\\
Version:&\tipversion$Revision: 1.20 $\\
Author:&James P. Salsman \tipmail{james}{bovik.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&26 August 2004\\
Posting History:&
\\
Keywords:&Tcl, lsort, parallel lists\\
&\\Abstract:&
An \textbf{-indices} option is proposed for the \textbf{lsort} command, returning the indices of the given list's elements in the order that they would have otherwise been sorted.
\\\hline\hline
\textbf{TIP \#218}:&\textbf{Tcl Channel Driver Thread State Actions}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&Andreas Kupries \tipmail{andreas_kupries}{users.sf.net}
\par Andreas Kupries \tipmail{akupries}{shaw.ca}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\par David Gravereaux \tipmail{davygrvy}{pobox.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&09 September 2004\\
Posting History:&
\\
&\\Abstract:&
This document specifies a modification of the public definition of channel drivers for the Tcl I/O system to fix a bug in the transfer of channels between threads affecting all drivers requiring thread-specific initialization. The targets for the change are Tcl 8.4.\textit{x} (note that this is an API change to a release) and Tcl 8.5.
\\\hline\hline
\textbf{TIP \#219}:&\textbf{Tcl Channel Reflection API}\\
Version:&\tipversion$Revision: 1.27 $\\
Authors:&Andreas Kupries \tipmail{andreas_kupries}{users.sf.net}
\par Andreas Kupries \tipmail{akupries}{shaw.ca}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&09 September 2004\\
Posting History:&
\\
&\\Abstract:&
This document describes an API which reflects the Channel Driver API of the core I/O system up into the Tcl level, for the implementation of channel types in Tcl. It is built on top of \cite{tip208} ('Add a chan command') and also an independent companion to \cite{tip230} ('Tcl Channel Transformation Reflection API') and \cite{tip228} ('Tcl Filesystem Reflection API'). As the later TIPs bring the ability of writing channel transformations and filesystems in Tcl itself into the core so this TIP provides the facilities for the implementation of new channel types in Tcl. This document specifies version \textit{1} of the channel reflection API.
\\\hline\hline
\textbf{TIP \#220}:&\textbf{Escalate Privileges in VFS Close Callback}\\
Version:&\tipversion$Revision: 1.18 $\\
Authors:&Colin McCormack \tipmail{colin}{sharedtech.dyndns.org}
\par Andreas Kupries \tipmail{akupries}{shaw.ca}
\par Vince Darley \tipmail{vincentdarley}{users.sourceforge.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&12 September 2004\\
Posting History:&
\\
&\\Abstract:&
This tip allows the creator and opener of a channel to cast away privileges and have them restored on close, to permit last-minute processing. It is sufficient to resolve a \textit{tclvfs} bug, minimal, and safe.
\\\hline\hline
\textbf{TIP \#221}:&\textbf{Allow Background Error Handlers to Accept Return Options}\\
Version:&\tipversion$Revision: 2.10 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&15 September 2004\\
Posting History:&
\\
Keywords:&bgerror, return, options\\
&\\Abstract:&
This TIP proposes a new system for registering a background error handler of an interp so that the full set of return options (\cite{tip90}) can be passed to it.
\\\hline\hline
\textbf{TIP \#222}:&\textbf{Add [wm attributes -alpha] Attribute on Windows}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Jeff Hobbs \tipmail{jeffh}{activestate.com}
\par Andreas Kupries \tipmail{akupries}{shaw.ca}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&16 September 2004\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes a new controlled attribute \textbf{-alpha} to control toplevel alpha transparency for the \textbf{wm attributes} command on Windows.
\\\hline\hline
\textbf{TIP \#223}:&\textbf{Full-Screen Toplevel Support for Tk}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Mo DeJong \tipmail{mdejong}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&21 September 2004\\
Posting History:&
\\
&\\Abstract:&
Tk lacks an optimal method for creating a full-screen \textbf{toplevel}. A full-screen toplevel is one that has no borders and a client drawing area that covers the entire screen. On some UNIX systems, one can create a normal toplevel that is a little larger than size of the screen and place the upper left corner of the client drawing area at at (0,0). This option is not available under Windows as the position and dimensions of normal windows are constrained to keep them from covering up the start menu and task bar. Under Windows, a zoomed toplevel with the \textit{overrideredirect} flag set avoids this size restriction and displays with no borders, both desirable properties. Unfortunately, setting the \textit{overrideredirect} flag also keeps an icon for the toplevel from being displayed in the task bar and in the programs list accessed via Alt-Tab. There are also some UNIX systems that restrict the placement of a normal toplevel window. For example, the default window manager for the KDE desktop restricts size and placement of a normal toplevel in much the same way as Windows. This TIP and its associated patch implement full-screen functionality that also displays an icon in the taskbar and is accessible via Alt-Tab. The implementation adds a new \textbf{-fullscreen} option to the \textbf{wm attributes} subcommand.
\\\hline\hline
\textbf{TIP \#224}:&\textbf{Add New [array] Subcommands 'incr' and 'value'}\\
Version:&\tipversion$Revision: 1.12 $\\
Authors:&Peter MacDonald \tipmail{peter}{pdqi.com}
\par Robert Seeger \tipmail{rseeger00}{aol.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&28 September 2004\\
Posting History:&
\\
&\\Abstract:&
The TIP proposes the addition to two new subcommands to the \textbf{array} command: \textbf{incr} and \textbf{value}. The \textit{'incr} subcommand would increment an element in an array. The \textbf{value} subcommand would query, reference, and/or initialize an array element.
\\\hline\hline
\textbf{TIP \#225}:&\textbf{Arithmetic Series with Optimized Space Complexity}\\
Version:&\tipversion$Revision: 1.14 $\\
Authors:&Salvatore Sanfilippo \tipmail{antirez}{invece.org}
\par Miguel Sofer \tipmail{msofer}{users.sf.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&25 October 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to add a new command to generate arithmetic sequences as Tcl lists that may be stored in constant space in many practical situations. The only change from the point of view of the Tcl programmer is the addition of a new command named \textbf{range}.
\\\hline\hline
\textbf{TIP \#226}:&\textbf{Interface to Save and Restore Interpreter State}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&30 October 2004\\
Posting History:&
\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes new public C routines to allow the dynamic state of an interp, including the return options, and error logging in progress as well as the interp result, to be saved and later restored.
\\\hline\hline
\textbf{TIP \#227}:&\textbf{Interface to Get and Set the Return Options of an Interpreter}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&30 October 2004\\
Posting History:&
\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes new public C routines to allow the same access to interpreter return options \cite{tip90} as are provided at the script level by the \textbf{catch} and \textbf{return} commands.
\\\hline\hline
\textbf{TIP \#228}:&\textbf{Tcl Filesystem Reflection API}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&Andreas Kupries \tipmail{andreas_kupries}{users.sf.net}
\par Andreas Kupries \tipmail{akupries}{shaw.ca}
\par Vince Darley \tipmail{vincentdarley}{users.sourceforge.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&02 November 2004\\
Posting History:&
\\
&\\Abstract:&
This document describes an API which reflects the Filesystem Driver API of the core Virtual Filesystem Layer up into the Tcl level, for the implementation of filesystems in Tcl. It is an independent companion to \cite{tip219} ('Tcl Channel Reflection API') and \cite{tip230} ('Tcl Channel Transformation Reflection API'). As the latter TIPs bring the ability of writing channel drivers and transformations in Tcl itself into the core so this TIP provides the facilities for the implementation of filesystems in Tcl. This document specifies version \textit{1} of the filesystem reflection API.
\\\hline\hline
\textbf{TIP \#229}:&\textbf{Scripted Control of Name Resolution in Namespaces}\\
Version:&\tipversion$Revision: 1.10 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{man.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&03 November 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes extensions to the \textbf{namespace} command to allow scripts to control how individual namespaces map names to commands.
\\\hline\hline
\textbf{TIP \#230}:&\textbf{Tcl Channel Transformation Reflection API}\\
Version:&\tipversion$Revision: 1.17 $\\
Authors:&Andreas Kupries \tipmail{andreas_kupries}{users.sf.net}
\par Andreas Kupries \tipmail{akupries}{shaw.ca}
\par Andreas Kupries \tipmail{andreask}{activestate.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&02 November 2004\\
Posting History:&
\\
&\\Abstract:&
This document describes an API which reflects the Channel Transformation API of the core I/O system up into the Tcl level, for the implementation of channel transformations in Tcl. It is built on top of \cite{tip208} ('Add a chan command') and also an independent companion to \cite{tip219} ('Tcl Channel Reflection API') and \cite{tip228} ('Tcl Filesystem Reflection API'). As the latter TIPs bring the ability of writing channel drivers and filesystems in Tcl itself so this TIP provides the facilities for the implementation of new channel transformations in Tcl. This document specifies version \textit{1} of the transformation reflection API.
\\\hline\hline
\textbf{TIP \#231}:&\textbf{Support for [wm attributes] on X11}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Joe English \tipmail{jenglish}{flightlab.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&06 November 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP adds three UNIX/X11-specific attributes to the \textbf{wm attributes} command to take advantage of features newer Unix window manager control standards.
\\\hline\hline
\textbf{TIP \#232}:&\textbf{Creating New Math Functions for the 'expr' Command}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&Arjen Markus \tipmail{arjen.markus}{wldelft.nl}
\par Kevin Kenny ‚kennykb@acm.org ƒ
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&26 November 2004\\
Posting History:&
\\
Keywords:&math, expr, Tcl\\
&\\Abstract:&
This TIP proposes to replace Tcl's math functions, ordinarily created using the \textbf{Tcl\_CreateMathFunc()} function, with ordinary Tcl commands created in a known namespace, \textbf{::tcl::mathfunc}. This change has two chief motivations: it allows programmers to define new math functions at the Tcl level, and it encapsulates the \textbf{Tcl\_Value} API so that new math functions can work on data types that are not described adequately as \textbf{Tcl\_Value} objects.
\\\hline\hline
\textbf{TIP \#233}:&\textbf{Virtualization of Tcl's Sense of Time}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Andreas Kupries \tipmail{andreas_kupries}{users.sf.net}
\par Andreas Kupries \tipmail{akupries}{shaw.ca}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&30 November 2004\\
Posting History:&
\\
&\\Abstract:&
This document describes a number of changes to internal and public APIs which allows external code to hook into the routines through which the Tcl core computes time-dependent information, and to override them. Through this the external code can manipulate Tcl's sense of time.
\\\hline\hline
\textbf{TIP \#234}:&\textbf{Add Support For Zlib Compression}\\
Version:&\tipversion$Revision: 1.21 $\\
Author:&Pascal Scheffers \tipmail{pascal}{scheffers.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&08 December 2004\\
Posting History:&
\\
Keywords:&Tcl, zip, gzip, deflate\\
&\\Abstract:&
This TIP proposes a new core package with commands to handle compression and decompression using the Zlib compression library.
\\\hline\hline
\textbf{TIP \#235}:&\textbf{Exposing a C API for Ensembles}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&10 December 2004\\
Posting History:&
\\
&\\Abstract:&
This TIP exposes a C API for the ensembles of \cite{tip112}.
\\\hline\hline
\textbf{TIP \#236}:&\textbf{Absolute Positioning of Canvas Items}\\
Version:&\tipversion$Revision: 1.10 $\\
Author:&Neil McKay \tipmail{mckay}{eecs.umich.edu}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&25 December 2004\\
Posting History:&
\\
Keywords:&Tk, anchor, place\\
&\\Abstract:&
This TIP proposes adding a canvas widget command to set the absolute position of canvas items.
\\\hline\hline
\textbf{TIP \#237}:&\textbf{Arbitrary-Precision Integers for Tcl}\\
Version:&\tipversion$Revision: 1.19 $\\
Authors:&Kevin B. Kenny \tipmail{kennykb}{acm.org}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&14 January 2005\\
Posting History:&
\\
&\\Abstract:&
This TIP adds the capability to perform computations on integer values of arbitrary precision.
\\\hline\hline
\textbf{TIP \#238}:&\textbf{Fire Event when Widget Created}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Gerald W. Lester \tipmail{Gerald.Lester}{cox.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&25 January 2005\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP arranged for a new virtual event to be fired every time a widget is created. This allows class bindings to automatically discover new widget instances and act on their creation.
\\\hline\hline
\textbf{TIP \#239}:&\textbf{Enhance the 'load' Command}\\
Version:&\tipversion$Revision: 1.12 $\\
Author:&Jeff Hobbs \tipmail{jeffh}{activestate.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&26 January 2005\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes enhancing the Tcl \textbf{load} command with the ability to load arbitrary libraries and functions.
\\\hline\hline
\textbf{TIP \#240}:&\textbf{An Ensemble Command to Manage Processes}\\
Version:&\tipversion$Revision: 1.14 $\\
Author:&Steve Bold \tipmail{stevebold}{hotmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&22 February 2005\\
Posting History:&
\\
Obsoletes:&TIP \#88\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes some new commands through which Tcl scripts can create and monitor child processes.
\\\hline\hline
\textbf{TIP \#241}:&\textbf{Case-Insensitive Switches and List Searching and Sorting}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&26 February 2005\\
Posting History:&
\\
Keywords:&Tcl, sorted lists, matching\\
&\\Abstract:&
This TIP proposes a \textbf{-nocase} option for the \textbf{lsearch}, \textbf{lsort} and \textbf{switch} commands to allow for case-insensitive handling of the specified list.
\\\hline\hline
\textbf{TIP \#242}:&\textbf{Preselect Filter on tk\_get*File Dialogs}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Brian Griffin \tipmail{bgriffin}{model.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&03 March 2005\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes adding an \textbf{-typevariable} option to the \textbf{tk\_getOpenFile} and \textbf{tk\_getSaveFile} dialog box commands. This option will preselect the filter from the \textbf{-filetypes} list based on the type name.
\\\hline\hline
\textbf{TIP \#243}:&\textbf{Supply Find Dialog for the Text Widget}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Rüdiger Härtel \tipmail{r_haertel}{gmx.de}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&16 March 2005\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP adds a \textit{find dialog} to the Tk \textbf{text} widget.
\\\hline\hline
\textbf{TIP \#244}:&\textbf{PNG Photo Image Support for Tk}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Michael Kirkham \tipmail{mikek}{muonics.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&22 March 2005\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
Tk's photo image type has had support for alpha channels internally since version 8.3. However, to date there is no photo format in the core that exposes this functionality. This TIP proposes adding support for the PNG (Portable Network Graphics) format.
\\\hline\hline
\textbf{TIP \#245}:&\textbf{Discover User Inactivity Time}\\
Version:&\tipversion$Revision: 1.12 $\\
Authors:&Pascal Scheffers \tipmail{pascal}{scheffers.net}
\par Reinhard Max \tipmail{max}{tclers.tk}
\par Neil Madden \tipmail{nem}{cs.nott.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&15 April 2005\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes a new subcommand, \textbf{inactive}, to the \textbf{tk} command, as well as \textbf{Tk\_GetUserInactiveTime} and \textbf{Tk\_ResetUserInactiveTime} C functions to discover the number of milliseconds the user has been inactive and reset that timer to zero respectively. For most environments, this is the time since the user last used the keyboard or mouse.
\\\hline\hline
\textbf{TIP \#246}:&\textbf{Unify Pattern Matching}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Reinhard Max \tipmail{max}{tclers.tk}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&27 April 2005\\
Posting History:&
\\
Keywords:&pattern, match, glob, exact, regexp, case sensitive, Tcl\\
&\\Abstract:&
Many Tcl commands take arguments that are patterns to match against. Some of these commands allow options to specify whether the pattern should be treated as a literal, a glob pattern, or a regular expression, and whether or not matching should be case sensitive. This TIP proposes a unique set of options for all commands that accept pattern arguments.
\\\hline\hline
\textbf{TIP \#247}:&\textbf{Tcl/Tk Engineering Manual}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&John K. Ousterhout \tipmail{ouster}{pacbell.net}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&01 June 2005\\
Posting History:&
\\
&\\Abstract:&
This document describes the set of conventions used for writing C code to go into the Tcl and Tk core. It is also recommended that extensions be written in the same style for clarity.
\\\hline\hline
\textbf{TIP \#248}:&\textbf{Integrate Tile into Tk as Ttk}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Jeff Hobbs \tipmail{jeffh}{activestate.com}
\par Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&08 June 2005\\
Posting History:&
\\
Obsoletes:&TIP \#172\\
&\\Abstract:&
This TIP proposes that the tile themed widget set be integrated into Tk from 8.5 onwards as the static package Ttk.
\\\hline\hline
\textbf{TIP \#249}:&\textbf{Unification of Tcl's Parsing of Numbers}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Kevin B. Kenny \tipmail{kennykb}{acm.org}
\par David S. Cargo \tipmail{escargo}{skypoint.com}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Draft\\Type:&Informative\\
Vote:&No voting\\
Created:&13 June 2005\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to unify the recognition of all of Tcl's ``numeric'' objects into a single parser. The intended effect is to improve performance by eliminating a number of cases where a cached numeric representation may be discarded, and to restore (more accurately, to establish) the ``everything is a string'' principle in dealing with numbers.
\\\hline\hline
\textbf{TIP \#250}:&\textbf{Efficient Access to Namespace Variables}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Will Duquette \tipmail{will}{wjduquette.com}
\par miguel sofer \tipmail{msofer}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&19 June 2005\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a new \textbf{namespace} subcommand, \textbf{namespace upvar}, to efficiently alias namespace variables into the current scope.
\\\hline\hline
\textbf{TIP \#251}:&\textbf{Enhance the 'list' Command}\\
Version:&\tipversion$Revision: 1.14 $\\
Authors:&Brian Schmidt \tipmail{contact}{schmidtsrus.net}
\par S\'{e}rgio Loureiro \tipmail{srgloureiro}{gmail.com}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&28 June 2005\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes enhancing the existing \textbf{list} command to serve as a top-level command ensemble for all the related list commands that have proliferated over time, as well as making it easier to add future new list-based commands.
\\\hline\hline
\textbf{TIP \#252}:&\textbf{Add New 'string' Command Options}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Brian Schmidt \tipmail{contact}{schmidtsrus.net}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&28 June 2005\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes moving several existing string-related commands to be options in the existing top-level \textbf{string} command.
\\\hline\hline
\textbf{TIP \#253}:&\textbf{Consolidate Package-Related Commands}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Brian Schmidt \tipmail{contact}{schmidtsrus.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&05 July 2005\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes enhancing the existing \textbf{package} command with additional subcommands to serve as the top-level command container for the existing \textbf{pkg::create} and \textbf{pkg\_mkIndex} commands.
\\\hline\hline
\textbf{TIP \#254}:&\textbf{New Types for Tcl\_LinkVar}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Rene Meyer \tipmail{rene.meyer}{sturmit.de}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&21 July 2005\\
Posting History:&
\\
&\\Abstract:&
Currently only a limited set of types of C variable may be linked to using Tcl\_LinkVar. This TIP proposes extending this to cover all the basic numeric C types.
\\\hline\hline
\textbf{TIP \#255}:&\textbf{Add 'min' and 'max' [expr] Functions}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Jeff Hobbs \tipmail{jeffh}{activestate.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&21 July 2005\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes enhancing the Tcl \textbf{expr} command with \textbf{min} and \textbf{max} functions.
\\\hline\hline
\textbf{TIP \#256}:&\textbf{Implement Tabular and Wordprocessor Style Tabbing}\\
Version:&\tipversion$Revision: 1.15 $\\
Authors:&Vince Darley \tipmail{vince}{santafe.edu}
\par Vince Darley \tipmail{vincentdarley}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&12 August 2005\\
Posting History:&
\\
&\\Abstract:&
There are two common style of tabbing in the computer world: that used for a regular table of information, and that used by a word-processor/text editor. This TIP proposes to add support for the latter to Tk's \textbf{text} widget.
\\\hline\hline
\textbf{TIP \#257}:&\textbf{Object Orientation for Tcl}\\
Version:&\tipversion$Revision: 1.31 $\\
Authors:&Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\par Will Duquette \tipmail{will}{wjduquette.com}
\par Steve Landers \tipmail{steve}{digitalsmarties.com}
\par Jeff Hobbs \tipmail{jeffh}{activestate.com}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\par Miguel Sofer \tipmail{mig}{utdt.edu}
\par Richard Suchenwirth \tipmail{richard.suchenwirth-bauersachs}{siemens.com}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&26 September 2005\\
Posting History:&
\\
Obsoletes:&TIP \#50\\
&\\Abstract:&
This TIP proposes adding OO support to the Tcl core, semantically inspired by XOTcl. The commands it defines will be in the \textbf{::oo} namespace, which is not used by any current mainstream OO system, and it will be designed specifically to allow other object systems to be built on top.
\\\hline\hline
\textbf{TIP \#258}:&\textbf{Enhanced Interface for Encodings}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&01 October 2005\\
Posting History:&
\\
Keywords:&encoding\\
&\\Abstract:&
This TIP proposes public C routines and a new \textbf{encoding dirs} subcommand to improve the interfaces to Tcl's encodings.
\\\hline\hline
\textbf{TIP \#259}:&\textbf{Making 'exec' Optionally Binary Safe}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Andreas Leitgeb \tipmail{avl}{logic.at}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&12 December 2005\\
Posting History:&
\\
&\\Abstract:&
A new option shall be added to the command \textbf{exec}, that allows the user to specify that input redirected from immediate data (using \textbf{\tiplangle{}\tiplangle{}}) and/or the data received from the external command shall not undergo any translation within Tcl.
\\\hline\hline
\textbf{TIP \#260}:&\textbf{Add Underline Option to Canvas Text Items}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&04 January 2006\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes adding an \textbf{-underline} option to the Tk \textbf{canvas} widget's text items.
\\\hline\hline
\textbf{TIP \#261}:&\textbf{Return Imported Commands from [namespace import]}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Martin Lemburg \tipmail{martin.lemburg}{gmx.net}
\par \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&20 December 2005\\
Posting History:&
\\
&\\Abstract:&
This TIP describes a mechanism for easily finding out the list of commands in the current namespace that have been imported from other namespaces.
\\\hline\hline
\textbf{TIP \#262}:&\textbf{Background Images for Frames}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Eric Taylor \tipmail{et2}{rocketship1.com}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&18 March 2006\\
Posting History:&
\\
Keywords:&Tk, option\\
&\\Abstract:&
This TIP proposes an option for frames that allows users to set the background of the window to be an image.
\\\hline\hline
\textbf{TIP \#263}:&\textbf{Quantum Tcl}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Lars Hellström \tipmail{Lars.Hellstrom}{residenset.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.2\\
Vote:&Pending\\
Created:&01 April 2006\\
Posting History:&
\\
&\\Abstract:&
A new Tcl command \textbf{qubit} is proposed. This command makes it possible to handle quantum information in the form of qubits.
\\\hline\hline
\textbf{TIP \#264}:&\textbf{Add Function to Retrieve the Interpreter of a Window}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&George Petasis \tipmail{petasis}{iit.demokritos.gr}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&01 April 2006\\
Posting History:&
\\
Keywords:&Tk, C API\\
&\\Abstract:&
This TIP proposes the addition of a new function in the Tk public API, for retrieving a pointer to the Tcl interpreter that was used for creating a window.
\\\hline\hline
\textbf{TIP \#265}:&\textbf{A Convenient C-side Command Option Parser for Tcl}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Sam Bromley \tipmail{sam}{sambromley.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&03 April 2006\\
Posting History:&
\\
Keywords:&Command line parsing, C implementation\\
&\\Abstract:&
The Tk C library provides developers with a \textit{Tk\_ParseArgv}() function that allows command line parsing of options of the ``-option'' form. Archived discussions on \url{news:comp.lang.tcl} and on the Wiki indicate that a desire for similar functionality without Tk has arisen several times in the past. This TIP presents a Tk-free implementation of \textit{Tk\_ParseArgv()} named \textbf{Tcl\_ParseArgvObj}, that developers can use to parse ``-option'' style command options in C implementations of Tcl commands using the Tcl\_Obj interface.
\\\hline\hline
\textbf{TIP \#266}:&\textbf{Numbers are Commands}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Kristoffer Lawson \tipmail{setok}{fishpool.com}
\par Michal Malecki \tipmail{ethouris}{gmail.com}
\par Wolf-Dieter Busch \tipmail{wolf-dieter.busch}{gmx.de}
\par Paul Nash \tipmail{webscool}{ihug.co.nz}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&11 April 2006\\
Posting History:&
\\
Keywords:&Tcl, unknown, expression\\
&\\Abstract:&
This TIP describes a change to Tcl's command dispatch which would allow every number to act as a command.
\\\hline\hline
\textbf{TIP \#267}:&\textbf{Allow 'exec' to Ignore Stderr}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Nathan Bell \tipmail{nathanb}{actarg.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&25 April 2006\\
Posting History:&
\\
&\\Abstract:&
Currently the \textbf{exec} command will always fail if the process writes to standard error. Since various applications use stderr for debug output it would be useful to retain this output without having to resort to redirecting stderr to stdout (which can cause interleaving).
\\\hline\hline
\textbf{TIP \#268}:&\textbf{Enhance 'package' Version Handling}\\
Version:&\tipversion$Revision: 1.12 $\\
Authors:&Jeff Hobbs \tipmail{jeffh}{activestate.com}
\par Hemang Lavana \tipmail{hlavana}{cisco.com}
\par Andreas Kupries \tipmail{andreask}{activestate.com}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&28 April 2006\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes enhancing the Tcl \textbf{package} command to understand version numbers containing ``a'', and ``b'' and extend the semantics of \textbf{package require} to allow multiple requirements and various types of ranges of versions.
\\\hline\hline
\textbf{TIP \#269}:&\textbf{Add 'string is list' to the 'string is' Subcommand}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&19 May 2006\\
Posting History:&
\\
Keywords:&Tcl, lists, strings\\
&\\Abstract:&
The \textbf{string} command supports tests for a number of Tcl's basic types, for example, integers, doubles, and booleans. This TIP proposes adding lists to the set of things that can be checked for.
\\\hline\hline
\textbf{TIP \#270}:&\textbf{Utility C Routines for String Formatting}\\
Version:&\tipversion$Revision: 1.10 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&19 June 2006\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes new public C utility routines for the convenience of C-coded extensions and embedded uses of Tcl.
\\\hline\hline
\textbf{TIP \#271}:&\textbf{Windows-Style Open and Save File Dialog on Unix}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Matthew Middleton \tipmail{matthew.middleton}{ansys.com}
\par susanta kumar mishra \tipmail{hi.skmishra}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&11 July 2006\\
Posting History:&
\\
&\\Abstract:&
This TIP describes updates to the Unix file dialogs to make them more like the dialogs found on the Windows platform. This increases the usability of the dialog for general ``power'' users.
\\\hline\hline
\textbf{TIP \#272}:&\textbf{String and List Reversal Operations}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&23 August 2006\\
Posting History:&
\\
Keywords:&Tcl, lreverse\\
&\\Abstract:&
This TIP proposes adding commands to reverse the order of characters in strings and elements in lists.
\\\hline\hline
\textbf{TIP \#273}:&\textbf{Add Tcl\_Expr... Support to Tcl\_Get... Functions}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Carsten Gosvig \tipmail{tcl}{javalite.com}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&30 August 2006\\
Posting History:&
\\
Obsoletes:&TIP \#176\\
&\\Abstract:&
This TIP proposes adding \textbf{Tcl\_Expr}... calls to \textbf{Tcl\_Get}... functions, supporting direct use of expressions for arguments to commands that is defined as int, long, wide-int, double or boolean.
\\\hline\hline
\textbf{TIP \#274}:&\textbf{Right-Associativity for the Exponentiation Operator}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Arjen Markus \tipmail{arjen.markus}{wldelft.nl}
\par David Smith \tipmail{David.Smith}{synopsis.com}
\par Richard Suchenwirth \tipmail{richard.suchenwirth-bauersachs}{siemens.com}
\par Don Porter \tipmail{dgp}{users.sf.net}
\par S\'{e}rgio Loureiro \tipmail{srgloureiro}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&15 September 2006\\
Posting History:&
\\
Keywords:&Tcl, expr\\
&\\Abstract:&
This TIP clarifies and corrects the associativity behaviour of the exponentation operator that was introduced in \cite{tip123}.
\\\hline\hline
\textbf{TIP \#275}:&\textbf{Support Unsigned Values in binary Command}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&27 September 2006\\
Posting History:&
\\
Keywords:&Tcl, binary, unsigned\\
&\\Abstract:&
This TIP proposes to add support for unsigned values to the \textbf{binary} command.
\\\hline\hline
\textbf{TIP \#276}:&\textbf{Specify and Unify Variable Linking Commands}\\
Version:&\tipversion$Revision: 1.20 $\\
Author:&Miguel Sofer \tipmail{msofer}{users.sourceforge.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&01 October 2006\\
Posting History:&
\\
Keywords:&Tcl, global, variable, upvar, namespace upvar\\
&\\Abstract:&
The purpose of this TIP is to simplify and clarify the semantics of the commands in Tcl that couple variables in different scopes together.
\\\hline\hline
\textbf{TIP \#277}:&\textbf{Create Namespaces as Needed}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Miguel Sofer \tipmail{msofer}{users.sourceforge.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&01 October 2006\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes that namespaces be created automatically whenever a script tries to create a command, variable or child namespace in it.
\\\hline\hline
\textbf{TIP \#278}:&\textbf{Fix Variable Name Resolution Quirks}\\
Version:&\tipversion$Revision: 1.18 $\\
Authors:&Miguel Sofer \tipmail{msofer}{users.sourceforge.net}
\par Miguel Sofer \tipmail{msofer}{users.sf.net}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\par Jan Nijtmans \tipmail{jan.nijtmans}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Pending\\
Created:&03 October 2006\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to fix the behaviour for variable name resolution, modelling it on the resolution for namespace names instead of the current command name resolution.
\\\hline\hline
\textbf{TIP \#279}:&\textbf{Adding an Extensible Object System to the Core}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&Gustaf Neumann \tipmail{neumann}{wu-wien.ac.at}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&05 October 2006\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes adding OO support to the Tcl core, consisting mostly of a dispatcher plus a small number of helper commands. The TIP allows the coexistence of multiple object systems by providing a common framework, the Tcl Minimal Object System (TMOS). The framework will contain, as well, a small, basic oriented language (Tcl Core Object Oriented Language, TclCOOL) to make it usable in the core without any extensions. All defined commands of the minimal object system are defined in the \textbf{::oo} namespace, which is not used by any current mainstream OO system. It has been designed specifically to allow a relatively simple re-implementation of the known object systems.
\\\hline\hline
\textbf{TIP \#280}:&\textbf{Add Full Stack Trace Capability With Location Introspection}\\
Version:&\tipversion$Revision: 1.13 $\\
Authors:&Andreas Kupries \tipmail{andreas_kupries}{users.sourceforge.net}
\par Andreas Kupries \tipmail{andreask}{activestate.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&10 August 2004\\
Posting History:&
\\
Obsoletes:&TIP \#211\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes adding a new subcommand to the \textbf{info} command to get a list of all the frames on the current stack, with additional information about command location, type of execution, etc., rather than the limited list returned by \textbf{info level}. It is also related to Peter MacDonald's \cite{tip86}, or rather, to the \textbf{info linenum} feature proposed there. The base feature of providing location information for a command was extended, allowing the user to ask for the current location in all stack levels. Enough information is returned to consider this as an extended \cite{tip211}.
\\\hline\hline
\textbf{TIP \#281}:&\textbf{Improvements in System Error Handling}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&David Gravereaux \tipmail{davygrvy}{pobox.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&08 October 2006\\
Posting History:&
\\
Keywords:&POSIX, channel driver, errorCode\\
&\\Abstract:&
This TIP describes the need for better error codes and message handling of system errors to be returned to scripts.
\\\hline\hline
\textbf{TIP \#282}:&\textbf{Enhanced Expression Syntax}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Will Duquette \tipmail{William.H.Duquette}{jpl.nasa.gov}
\par Don Porter \tipmail{dgp}{users.sourceforge.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&13 October 2006\\
Posting History:&
\\
Keywords:&expr, operator, assignment\\
&\\Abstract:&
This TIP extends the syntax of the \textbf{expr} command to allow a sequence of mathematical computations to be expressed clearly and concisely.
\\\hline\hline
\textbf{TIP \#283}:&\textbf{Modify Ensemble Command Resolution Behaviour}\\
Version:&\tipversion$Revision: 1.22 $\\
Authors:&Miguel Sofer \tipmail{msofer}{users.sourceforge.net}
\par Neil Madden \tipmail{nem}{cs.nott.ac.uk}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&01 October 2006\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes that ensembles resolve all commands in their namespace.
\\\hline\hline
\textbf{TIP \#284}:&\textbf{New 'invoke' and 'namespace invoke' Commands}\\
Version:&\tipversion$Revision: 1.23 $\\
Author:&Miguel Sofer \tipmail{msofer}{users.sourceforge.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&01 October 2006\\
Posting History:&
\\
&\\Abstract:&
This TIP exposes a Tcl script-level interface to the direct command invokation engine already present in the Tcl library for years.
\\\hline\hline
\textbf{TIP \#285}:&\textbf{Script Cancellation with [interp cancel] and Tcl\_CancelEval}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\par Dawson Cowals \tipmail{dawson}{dawsoncowals.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&04 June 2006\\
Posting History:&
\\
Keywords:&eval, cancel, unwind, terminate, runaway, async, thread, safe\\
&\\Abstract:&
This TIP introduces the ability to quickly and safely cancel a script within a specified interpreter from any thread in the process.
\\\hline\hline
\textbf{TIP \#286}:&\textbf{Add 'xposition' Command to Menu Widgets}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Schelte Bron \tipmail{sbron}{wanadoo.nl}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&18 October 2006\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
There has been a \textbf{yposition} subcommand for menu widgets for years, but its counterpart in the x-direction does not currently exist. This TIP intends to rectify that situation.
\\\hline\hline
\textbf{TIP \#287}:&\textbf{Add a Commands for Determining Size of Buffered Data}\\
Version:&\tipversion$Revision: 1.12 $\\
Author:&Michael A. Cleverly \tipmail{michael}{cleverly.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&26 October 2006\\
Posting History:&
\\
Keywords:&Tcl, channel, chan, pendinginput, pendingoutput\\
&\\Abstract:&
Many network servers programmed in Tcl (including the venerable tclhttpd) are vulnerable to DoS (denial of service) attacks because they lack any way to introspect the amount of buffered data on a non-blocking socket that is in line buffering mode. This TIP proposes a new subcommand to \textbf{chan} to allow the amount of buffered input and buffered output (for symmetry) to be inspected from Tcl.
\\\hline\hline
\textbf{TIP \#288}:&\textbf{Allow "args" Anywhere in Procedure Formal Arguments}\\
Version:&\tipversion$Revision: 1.14 $\\
Authors:&Peter Spjuth \tipmail{peter.spjuth}{space.se}
\par Andreas Leitgeb \tipmail{avl}{logic.at}
\par Peter Spjuth \tipmail{peter.spjuth}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&03 October 2006\\
Posting History:&
\\
Keywords:&Tcl, proc\\
&\\Abstract:&
This TIP proposes to make \textit{args} have its special meaning as a formal \textbf{proc}edure argument anywhere in the argument list.
\\\hline\hline
\textbf{TIP \#289}:&\textbf{Revision of [lrepeat] Argument Order}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Peter Spjuth \tipmail{peter.spjuth}{space.se}
\par \tipmail{dgp}{users.sf.net}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&26 October 2006\\
Posting History:&
\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes to alter the argument order of \textbf{lrepeat} to be similar to \textbf{string repeat}.
\\\hline\hline
\textbf{TIP \#290}:&\textbf{Registration of Custom Error Handler Scripts}\\
Version:&\tipversion$Revision: 1.13 $\\
Authors:&Eckhard Lehmann \tipmail{ecky-l}{web.de}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&29 October 2006\\
Posting History:&
\\
Keywords:&Tcl, error, trap\\
&\\Abstract:&
This TIP proposes the possibility to register a custom command as error and exception handler.
\\\hline\hline
\textbf{TIP \#291}:&\textbf{Add the 'platform' Package to Tcl}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Steve Landers \tipmail{steve}{DigitalSmarties.com}
\par Andreas Kupries \tipmail{andreask}{activestate.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&26 October 2006\\
Posting History:&
\\
Keywords:&Tcl, Critcl, TEApot\\
&\\Abstract:&
This TIP proposes adding the \textbf{platform} package to the Tcl core sources and to install it automatically, similar to what is currently done with the \textbf{tcltest} package.
\\\hline\hline
\textbf{TIP \#292}:&\textbf{Allow Unquoted Strings in Expressions}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Brian Griffin \tipmail{bgriffin}{model.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&01 November 2006\\
Posting History:&
\\
Keywords:&Tcl, expr\\
&\\Abstract:&
This TIP proposes allowing unquoted words to be recognized as strings in expressions (\textbf{expr}, \textbf{if}, \textbf{while}).
\\\hline\hline
\textbf{TIP \#293}:&\textbf{Argument Expansion with Leading {*}}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Miguel Sofer \tipmail{msofer}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&02 November 2006\\
Posting History:&
\\
Obsoletes:&TIP \#157\\
&\\Abstract:&
Tcl shall use \textbf{\{*\}} to denote argument expansion, replacing the current \textbf{\{expand\}}.
\\\hline\hline
\textbf{TIP \#294}:&\textbf{The "entier" Function: It's Spelt "entire"}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Lars Hellström \tipmail{Lars.Hellstrom}{residenset.net}
\par Richard Suchenwirth \tipmail{richard.suchenwirth-bauersachs}{siemens.com}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&03 November 2006\\
Posting History:&
\\
Keywords:&Tcl, number, cast, rename\\
&\\Abstract:&
It is proposed that the \textbf{expr} function \textbf{entier}() introduced by \cite{tip237} is renamed to \textbf{entire}().
\\\hline\hline
\textbf{TIP \#295}:&\textbf{Enhance Arguments to lrange}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Andreas Leitgeb \tipmail{avl}{logic.at}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&06 November 2006\\
Posting History:&
\\
Keywords:&Tcl, lrange\\
&\\Abstract:&
This TIP proposes an enhancement to \textbf{lrange} and \textbf{string range} that lets them take more than one start-end index pair.
\\\hline\hline
\textbf{TIP \#296}:&\textbf{Enhanced Syntax for Pair-Wise Indices}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Andreas Leitgeb \tipmail{avl}{logic.at}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&06 November 2006\\
Posting History:&
\\
Keywords:&Tcl, lrange, lreplace\\
&\\Abstract:&
This TIP proposes adding another anchor \textbf{s} (for usage exclusively in end-indices) that refers to the respective start-index.
\\\hline\hline
\textbf{TIP \#297}:&\textbf{Integer Type Introspection and Conversion}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&20 November 2006\\
Posting History:&
\\
Keywords:&Tcl, number, expression\\
&\\Abstract:&
This TIP proposes changes to complete the set of commands to test and convert among Tcl's integer types.
\\\hline\hline
\textbf{TIP \#298}:&\textbf{Revise Shared Value Rules for Tcl\_GetBignumAndClearObj}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&22 November 2006\\
Posting History:&
\\
Keywords:&Tcl, Tcl\_Obj\\
&\\Abstract:&
This TIP proposes a revision to \textbf{Tcl\_GetBignumAndClearObj} to make it easier to use.
\\\hline\hline
\textbf{TIP \#299}:&\textbf{Add isqrt() Math Function}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Kevin B. Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&24 November 2006\\
Posting History:&
\\
Keywords:&Tcl, expression, integer, square root\\
&\\Abstract:&
This TIP proposes a new \textbf{expr} math function \textbf{isqrt()}.
\\\hline\hline
\textbf{TIP \#300}:&\textbf{Examine Glyph Substitution in the 'font actual' Command}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Kevin B. Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&25 November 2006\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes enhancing the \textbf{font actual} command to allow determining the actual font to be used when rendering a specific character.
\\\hline\hline
\textbf{TIP \#301}:&\textbf{Split Bidirectional Channels For Half-Close}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Pending\\
Created:&11 December 2006\\
Posting History:&
\\
Obsoleted By:&TIP \#332\\
&\\Abstract:&
This TIP proposes to introduce a \textbf{chan split} command allowing to access both sides of a bidirectional channel (r+ pipe, or socket) as separate Tcl channels, in order to be able to close them separately. This would give Tcl the same level of control that the OS enjoys on the lifetime of such bidirectional connections.
\\\hline\hline
\textbf{TIP \#302}:&\textbf{Fix "after"'s Sensitivity To Adjustments Of System Clock}\\
Version:&\tipversion$Revision: 1.3 $\\
Authors:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&13 December 2006\\
Posting History:&
\\
Keywords:&Tcl, time changes\\
&\\Abstract:&
Currently, \textbf{after} tasks can be drastically delayed or sped up simply by adjusting the system clock. This is due to the implementation's use of an \textit{absolute} target date based on the system clock. The idea of this TIP is to use another timebase for this purpose: the count of ticks from boot, which is not affected by system time adjustments.
\\\hline\hline
\textbf{TIP \#303}:&\textbf{Enhance 'llength' Command to Support Nested Lists}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Wolf-Dieter Busch \tipmail{wolf-dieter.busch}{gmx.de}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&29 January 2007\\
Posting History:&
\\
Keywords:&Tcl, lindex\\
&\\Abstract:&
The command \textbf{llength} currently returns the length of a list. Sometimes it is desirable to know the length of a nested list. This TIP proposes an improvement to \textbf{llength} to do that.
\\\hline\hline
\textbf{TIP \#304}:&\textbf{A Standalone [chan pipe] Primitive for Advanced Child IPC}\\
Version:&\tipversion$Revision: 1.15 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&07 February 2007\\
Posting History:&
\\
Keywords:&Tcl, exec, process, subprocess, pipeline, channel\\
&\\Abstract:&
Currently, it is not easy to get both (separate) dataflows from the stdout and stderr of a child. BLT's \textbf{bgexec} does this in an extension, and could be added to the core. But the point of this TIP is to show that a much smaller code addition can provide a lower-level primitive with much more potential than \textbf{bgexec}'s: a \textit{standalone pipe} creation tool like TclX's \textbf{pipe} command.
\\\hline\hline
\textbf{TIP \#305}:&\textbf{ANSI Escape Sequence Support for Windows's Console Channel Driver}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&David Gravereaux \tipmail{davygrvy}{pobox.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&21 February 2007\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
&\\Abstract:&
The console channel driver for windows (win/tclWinConsole.c) could support colors, cursor movement, and scrolling by embedding such commands in the stream to the console in the age-old tradition of ANSI\_X3.64-1979 escapes. By filtering-out such commands in the DriverOutputProc and doing the command actions, greater cross-platform support is enabled to other platforms (such as Linux) that have ANSI support.
\\\hline\hline
\textbf{TIP \#306}:&\textbf{Auto-Naming Widgets}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&Koen Danckaert \tipmail{koen}{retarget.com}
\par Richard Suchenwirth \tipmail{richard.suchenwirth-bauersachs}{siemens.com}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&11 June 2007\\
Posting History:&
\\
Keywords:&automatic, Tk, widget, naming\\
&\\Abstract:&
A Tk programmer must give every widget a unique name. This is often quite annoying, especially for widgets whose name is stored in a variable (which also must be given a name). This TIP proposes a small extension to generate automatic names for widgets.
\\\hline\hline
\textbf{TIP \#307}:&\textbf{Make TclTransferResult() Public}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Erik Leunissen \tipmail{e.leunissen}{hccnet.nl}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&28 September 2007\\
Posting History:&
\\
Keywords:&Tcl, result, transfer, interpreter, API rename\\
&\\Abstract:&
This TIP proposes to make the existing function \textbf{TclTransferResult}() part of the public interface.
\\\hline\hline
\textbf{TIP \#308}:&\textbf{Tcl Database Connectivity (TDBC)}\\
Version:&\tipversion$Revision: 1.17 $\\
Authors:&Kevin B. Kenny \tipmail{kennykb}{acm.org}
\par Artur Trzewik \tipmail{mail}{xdobry.de}
\par Andreas Leitgeb \tipmail{avl}{logic.at}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Final\\Type:&Informative\\
Vote:&Done\\
Created:&15 November 2007\\
Posting History:&
\\
Obsoleted By:&TIP \#350\\
&\\Abstract:&
This TIP defines a common database access interface for Tcl scripts.
\\\hline\hline
\textbf{TIP \#309}:&\textbf{Expose the Expression Parsing}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Arjen Markus \tipmail{arjen.markus}{wldelft.nl}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&07 January 2008\\
Posting History:&
\\
Keywords:&expr, parse\\
&\\Abstract:&
This TIP proposes a new command to expose the parsing of expressions by the \textbf{expr} command. This will make it much easier to implement alternative number systems, such as complex numbers, or to implement symbolic algebra.
\\\hline\hline
\textbf{TIP \#310}:&\textbf{Add a New Pseudo-Random Number Generator}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Arjen Markus \tipmail{arjen.markus}{wldelft.nl}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&07 January 2008\\
Posting History:&
\\
Keywords:&expr\\
&\\Abstract:&
This TIP proposes to add a new \textbf{expr} function: a random number generator with a longer sequence than the one currently in the core.
\\\hline\hline
\textbf{TIP \#311}:&\textbf{Tcl/Tk 8.6 Release Calendar}\\
Version:&\tipversion$Revision: 1.66 $\\
Authors:&Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Larry W. Virden \tipmail{lvirden}{gmail.com}
\par Joe Mistachkin \tipmail{joe}{mistachkin.com}
\par Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\par Miguel Sofer \tipmail{msofer}{users.sf.net}
\par Lars Hellström \tipmail{Lars.Hellstrom}{residenset.net}
\par Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\par Arnulf Wiedemann \tipmail{arnulf}{wiedemann-pri.de}
\par Trevor Davel \tipmail{twylite}{crypt.co.za}
\par Donal K. Fellows \tipmail{dkf}{users.sf.net}
\par Jan Nijtmans \tipmail{jan.nijtmans}{gmail.com}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&08 January 2008\\
Posting History:&
\\
&\\Abstract:&
This TIP serves to coordinate Tcl/Tk 8.6 development releases and the features they deliver.
\\\hline\hline
\textbf{TIP \#312}:&\textbf{Add More Link Types}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Rene Zaumseil \tipmail{r.zaumseil}{freenet.de}
\par Larry W. Virden \tipmail{lvirden}{yahoo.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&26 January 2008\\
Posting History:&
\\
Keywords:&variable, trace\\
&\\Abstract:&
This TIP proposes adding a command, \textbf{Tcl\_LinkArray}, to allow linking of C variables to Tcl lists. It also adds more types of linked variable.
\\\hline\hline
\textbf{TIP \#313}:&\textbf{Inexact Searching in Sorted List}\\
Version:&\tipversion$Revision: 1.14 $\\
Author:&Peter Spjuth \tipmail{peter.spjuth}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&14 February 2008\\
Posting History:&
\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP adds a new switch to \textbf{lsearch} to do a binary search to find the insertion point in a sorted list.
\\\hline\hline
\textbf{TIP \#314}:&\textbf{Ensembles with Parameters}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Lars Hellström \tipmail{Lars.Hellstrom}{residenset.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&26 February 2008\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes that \textbf{namespace ensemble} commands are generalised so that they may have arguments before the subcommand name.
\\\hline\hline
\textbf{TIP \#315}:&\textbf{Add pathSeparator to tcl\_platform Array}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Hai Vu \tipmail{haivu2004}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&04 April 2008\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a mechanism for determining the platform's path separator. The path separator is currently ``:'' in Unix and ``;'' in DOS/Windows.
\\\hline\hline
\textbf{TIP \#316}:&\textbf{Portable Access Functions for Stat Buffers}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&02 May 2008\\
Posting History:&
\\
&\\Abstract:&
Tcl exposes the definition of the \textit{struct stat} type to users of its C API, but this can vary between builds. This TIP proposes a set of portable functions for reading (portable) fields out of those structures so that code does not need to match the API version when reading the fields (the most common case by far).
\\\hline\hline
\textbf{TIP \#317}:&\textbf{Extend binary Ensemble with Binary Encodings}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&03 May 2008\\
Posting History:&
\\
Keywords:&base64, uuencode, hex, transfer encoding\\
&\\Abstract:&
This TIP extends the \textbf{binary} command with implementations in C of commonly used binary encodings. In particular the \textit{base64} encoding is implemented but the Tcl ensemble scheme \cite{tip112} can be used to provide simple extension of the implemented formats.
\\\hline\hline
\textbf{TIP \#318}:&\textbf{Extend Default Whitespace in 'string trim' Beyond ASCII}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Bill Poser \tipmail{billposer}{alum.mit.edu}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&13 May 2008\\
Posting History:&
\\
&\\Abstract:&
This TIP extends the \textbf{string trim}, \textbf{string trimleft}, and \textbf{string trimright} subcommands to function properly with non-roman writing systems by adding non-ASCII space characters to the default list of characters to be trimmed.
\\\hline\hline
\textbf{TIP \#319}:&\textbf{Implement Backwards Compatibility for ttk Themed Widgets in tk Widgets}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Eric Taylor \tipmail{et2}{rocketship1.biz}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&04 June 2008\\
Posting History:&
\\
&\\Abstract:&
This TIP calls for the implementation of backward compatibility between ttk themed widgets and conventional tk widgets. It does this by describing configuration options that specify how to deal with unsupported options (error, ignore, or call supplied callbacks) where full compatibility is not feasible. Configuration should be both global (all widgets) and specific (by class or individual widget).
\\\hline\hline
\textbf{TIP \#320}:&\textbf{Improved Variable Handling in the Core Object System}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&13 June 2008\\
Posting History:&
\\
Keywords:&TclOO\\
&\\Abstract:&
This TIP specifies new configuration commands that allow variables to be used in methods of the core object system without explicit declaration in each method.
\\\hline\hline
\textbf{TIP \#321}:&\textbf{Add a [tk busy] Command}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Jos Decoster \tipmail{jos.decoster}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&26 June 2008\\
Posting History:&
\\
Keywords:&Tk, BLT, busy\\
&\\Abstract:&
The \textbf{blt::busy} commands can be used to make Tk widget busy, with all user interaction blocked and the cursor can be changed to e.g. a clock. This TIP proposes to add this useful feature to Tk.
\\\hline\hline
\textbf{TIP \#322}:&\textbf{Publish the NRE API}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Miguel Sofer \tipmail{msofer}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&13 July 2008\\
Posting History:&
\\
&\\Abstract:&
This TIP exposes an API to allow extension writers to take advantage of Tcl's Non-Recursive evaluation Engine.
\\\hline\hline
\textbf{TIP \#323}:&\textbf{Do Nothing Gracefully}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Colin McCormack \tipmail{colin}{chinix.com}
\par Don Porter \tipmail{dgp}{users.sf.net}
\par Kevin B. Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&06 August 2008\\
Posting History:&
\\
&\\Abstract:&
A number of Tcl's built-in commands currently raise errors when given arguments that would cause them to do nothing. This proposal asks that they instead simply do nothing gracefully.
\\\hline\hline
\textbf{TIP \#324}:&\textbf{A Standard Dialog For Font Selection}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Adrian Robert \tipmail{adrian.b.robert}{gmail.com}
\par Daniel A. Steffen \tipmail{das}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&08 August 2008\\
Posting History:&
\\
Obsoletes:&TIP \#213\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes the addition of a font selection dialog to the set of common dialogs already available in Tk. Where possible, this dialog will be implemented using the host platform's standard dialogs.
\\\hline\hline
\textbf{TIP \#325}:&\textbf{System Tray Access}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&David N. Welton \tipmail{davidw}{dedasys.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&25 August 2008\\
Posting History:&
\\
Keywords:&Tk, desktop integration\\
&\\Abstract:&
Modern operating systems have a ``system tray'', where programs may place an icon to indicate program status. This TIP proposes that Tk should adopt some existing code in order to permit cross platform access to this functionality.
\\\hline\hline
\textbf{TIP \#326}:&\textbf{Add -stride Option to lsort}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Kieran Elby \tipmail{kieran}{dunelm.org.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&01 September 2008\\
Posting History:&
\\
Keywords:&Tcl, lsort, sorting\\
&\\Abstract:&
This TIP adds a new option, \textbf{-stride}, to \textbf{lsort} to request that a list be treated as consisting of repeated groups of elements (as opposed to sublists), and that the the groups be sorted according to a chosen element within each group.
\\\hline\hline
\textbf{TIP \#327}:&\textbf{Proper Tailcalls}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Miguel Sofer \tipmail{msofer}{users.sf.net}
\par David S. Cargo \tipmail{escargo}{skypoint.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&20 September 2008\\
Posting History:&
\\
Keywords:&tailcall, NRE\\
&\\Abstract:&
This TIP recommends adding proper tailcalls to Tcl.
\\\hline\hline
\textbf{TIP \#328}:&\textbf{Coroutines}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Miguel Sofer \tipmail{msofer}{users.sf.net}
\par Neil Madden \tipmail{nem}{cs.nott.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&07 September 2008\\
Posting History:&
\\
Keywords:&Coroutine, continuation, event-loop, NRE\\
&\\Abstract:&
This TIP recommends adding a coroutine mechanism to Tcl, loosely modelled on those present in Lua.
\\\hline\hline
\textbf{TIP \#329}:&\textbf{Try/Catch/Finally syntax}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Trevor Davel \tipmail{twylite}{crypt.co.za}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&22 September 2008\\
Posting History:&
\\
Discussions To:&http://wiki.tcl.tk/21608\\
Obsoletes:&TIP \#89\\
&\\Abstract:&
This TIP proposes the addition of new core commands to improve the exception handling mechanism. It supercedes \cite{tip89} by providing support for the error options dictionary introduced in Tcl 8.5 by \cite{tip90}.
\\\hline\hline
\textbf{TIP \#330}:&\textbf{Eliminate interp-\tiprangle{}result from the Public Headers}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Kevin B. Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&22 September 2008\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to eliminate the long-deprecated \textit{interp}-\tiprangle{}\textit{result} field from the public headers.
\\\hline\hline
\textbf{TIP \#331}:&\textbf{Allow [lset] to Extend Lists}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Kevin B. Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&22 September 2008\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to modify the \textbf{lset} command to allow it to extend lists.
\\\hline\hline
\textbf{TIP \#332}:&\textbf{Half-Close for Bidirectional Channels}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&25 September 2008\\
Posting History:&
\\
Obsoletes:&TIP \#301\\
Keywords:&Tcl, channel, close, socket, shutdown\\
&\\Abstract:&
This TIP proposes to extend the \textbf{close}/\textbf{chan close} commands to let them perform an unidirectional ``half-close'' on bidirectional channels.
\\\hline\hline
\textbf{TIP \#333}:&\textbf{New Variable and Namespace Resolving Interface}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Arnulf Wiedemann \tipmail{arnulf}{wiedemann-pri.de}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&13 October 2008\\
Posting History:&
\\
Keywords:&Tcl, resolution\\
&\\Abstract:&
This is a TIP to allow easy command and variable resolving for itcl-ng, but is not restricted to itcl-ng. It should be possible for an application to drive the rules for command and variable lookup using the interface described below. This TIP should allow to get rid of namespace and interpreter resolvers for itcl-ng.
\\\hline\hline
\textbf{TIP \#334}:&\textbf{Make 'lrepeat' Accept Zero as a Count}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Michael Thomas Greer \tipmail{michael.thomas.greer}{verizon.net}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Pending\\
Created:&13 October 2008\\
Posting History:&
\\
Keywords:&empty list\\
&\\Abstract:&
Following on from \cite{tip323}, the \textbf{lrepeat} command should also act gracefully when a repeat count of zero is used, as an empty list is still a valid list.
\\\hline\hline
\textbf{TIP \#335}:&\textbf{An API for Detecting Active Interpreters}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&13 October 2008\\
Posting History:&
\\
Keywords:&numLevels, embedding, terminate, async, thread, safe, gc\\
&\\Abstract:&
This TIP introduces the ability to quickly and safely decide whether a Tcl script is evaluating in an interpreter, allowing an external system to determine whether it is safe to delete that interpreter.
\\\hline\hline
\textbf{TIP \#336}:&\textbf{Supported Access To interp-\tiprangle{}errorline}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&21 October 2008\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a supported public interface to set and get the value of the \textit{errorLine} field of the \textit{Tcl\_Interp} data structure.
\\\hline\hline
\textbf{TIP \#337}:&\textbf{Make TclBackgroundException() Public}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&21 October 2008\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to make the \textit{TclBackgroundException} routine available in the public interface so that extensions may notify Tcl about all return codes that occur during background operations.
\\\hline\hline
\textbf{TIP \#338}:&\textbf{Embedder Access to Startup Scripts of *\_Main()}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&22 October 2008\\
Posting History:&
\\
Keywords:&Tcl, Tk, tclsh, wish\\
&\\Abstract:&
This TIP proposes to make public the routines that get and set the startup script file that \textit{Tcl\_Main} or \textit{Tk\_Main} evaluate in their non-interactive modes.
\\\hline\hline
\textbf{TIP \#339}:&\textbf{Case-Insensitive Package Names}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Andreas Kupries \tipmail{andreask}{activestate.com}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&14 November 2008\\
Posting History:&
\\
&\\Abstract:&
This document proposes to change the package management facilities of the Tcl core to handle package names in a case-insensitive manner, switching back to case-sensitive operation if and only if explicitly requested by the user. The case of package names is preserved in the storage however.
\\\hline\hline
\textbf{TIP \#340}:&\textbf{Const Qualification of Tcl\_SetResult's Argument}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Jan Nijtmans \tipmail{nijtmans}{users.sourceforge.net}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&14 November 2008\\
Posting History:&
\\
Keywords:&Tcl\_SetResult\\
&\\Abstract:&
As a follow-up of \cite{tip27}, in Tcl 8.6 and Tk 8.6 much work has been done to clean up the remaining places where pointers were not \textit{const} qualified. The question is, how can we prevent that in the future similar ``mistakes'' are made. The gcc compiler warning \textit{-Wwrite-strings} helps in that, therefore this TIP proposes to add that to the CFLAGS\_WARNING flag in Tcl and Tk when using gcc. But for this flag to be introduced, all warnings will have to be eliminated. In the HEAD, this is done already, except for one function: \textbf{Tcl\_SetResult}. This function is explicitely mentioned in \cite{tip27} not to be modified, because it cannot be handled without unsafe casting. This TIP proposes to deprecate \textbf{Tcl\_SetResult} in full, and provide a new macro \textbf{Tcl\_SetStringResult} in its place.
\\\hline\hline
\textbf{TIP \#341}:&\textbf{Multiple 'dict filter' Patterns}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Lars Hellström \tipmail{Lars.Hellstrom}{residenset.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&27 November 2008\\
Posting History:&
\\
Keywords:&Tcl, set intersection\\
&\\Abstract:&
The \textbf{key} and \textbf{value} forms of \textbf{dict filter} are generalised to allow an arbitrary number of patterns.
\\\hline\hline
\textbf{TIP \#342}:&\textbf{Dict Get With Default}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Lars Hellström \tipmail{Lars.Hellstrom}{residenset.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&27 November 2008\\
Posting History:&
\\
Keywords:&dictionary, default value\\
&\\Abstract:&
A new subcommand of \textbf{dict} is proposed, which returns a dictionary value if it exists and returns a per-call default otherwise.
\\\hline\hline
\textbf{TIP \#343}:&\textbf{A Binary Specifier for [format/scan]}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&03 December 2008\\
Posting History:&
\\
Keywords:&Tcl, binary\\
&\\Abstract:&
This TIP proposes to add a \%b specifier to the \textbf{format} and \textbf{scan} commands for working with integers in base-2 representation.
\\\hline\hline
\textbf{TIP \#344}:&\textbf{Bring TCP\_NODELAY and SO\_KEEPALIVE to socket options}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&31 December 2008\\
Posting History:&
\\
&\\Abstract:&
Just expose to script level, via \textbf{fconfigure}, the two most important setsockopt() use cases: TCP\_NODELAY (disabling the Nagle agorithm) and SO\_KEEPALIVE (sending automatic keepalives).
\\\hline\hline
\textbf{TIP \#345}:&\textbf{Kill the 'identity' Encoding}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&05 February 2009\\
Posting History:&
\\
Keywords:&Tcl, encoding, invalid UTF-8\\
&\\Abstract:&
This TIP proposes to remove the 'identity' encoding which is the Pandora's Box of invalid UTF-8 string representations.
\\\hline\hline
\textbf{TIP \#346}:&\textbf{Error on Failed String Encodings}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&02 February 2009\\
Posting History:&
\\
Keywords:&Tcl, encoding, convertto, strict, Unicode, String, ByteArray\\
&\\Abstract:&
This TIP proposes to raise an error when an encoding-based conversion loses information.
\\\hline\hline
\textbf{TIP \#347}:&\textbf{Align 'string is ...' to Type-Conversion Functions in 'expr'}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Jos Decoster \tipmail{jos.decoster}{gmail.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&09 February 2009\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
Obsoleted By:&TIP \#395\\
Keywords:&Tcl\\
&\\Abstract:&
The \textbf{string} command supports tests for a number of Tcl's basic types, for example, integers, doubles, and booleans. The \textbf{tcl::mathfunc} mathematical functions provides sevaral functions to limit the number of bits used in integer numbers. This TIP proposes to align both groups of functions for \textbf{int}, \textbf{long}, \textbf{wide} and \textbf{entier}.
\\\hline\hline
\textbf{TIP \#348}:&\textbf{Substituted 'errorstack' / 'traceback'}\\
Version:&\tipversion$Revision: 1.17 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&26 February 2009\\
Posting History:&
\\
Keywords:&Tcl, debugging\\
&\\Abstract:&
This TIP proposes to add an \textbf{errorstack} options dict entry and associated \textbf{info} subcommand, giving a ``substituted'' traceback similar to Python's or gdb's ones.
\\\hline\hline
\textbf{TIP \#349}:&\textbf{New "-cargo" option for every Tk widget}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Zbigniew Baniewski \tipmail{zb}{ispid.com.pl}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&17 April 2009\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes adding a \textbf{-cargo} option to every Tk widget that will be kept free for code that uses the widget to use as it sees fit; the Tk library will assign no interpretation to the option.
\\\hline\hline
\textbf{TIP \#350}:&\textbf{Tcl Database Connectivity --- Corrigenda}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Kevin B. Kenny \tipmail{kennykb}{acm.org}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&18 April 2009\\
Posting History:&
\\
Obsoletes:&TIP \#308\\
&\\Abstract:&
This TIP defines a common database access interface for Tcl scripts. It is an update to \cite{tip308} to take into account experience gained since that TIP was written. Note that this TIP does \textit{not} repeat the contents of that one, which is mostly correct apart from the changes described in this document.
\\\hline\hline
\textbf{TIP \#351}:&\textbf{Add Striding Support to lsearch}\\
Version:&\tipversion$Revision: 1.19 $\\
Authors:&Peter da Silva \tipmail{peter}{taronga.com}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\par Harald Oehlmann \tipmail{harald.oehlmann}{elmicron.de}
\par Andreas Leitgeb \tipmail{avl}{logic.at}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&09 July 2009\\
Posting History:&
\\
&\\Abstract:&
This TIP allows the searching of lists that are grouped into collections of several elements.
\\\hline\hline
\textbf{TIP \#352}:&\textbf{Tcl Style Guide}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Ray Johnson \tipmail{rjohnson}{eng.sun.com}
\par Donal K. Fellows \tipmail{dkf}{defiant.rcs.manchester.ac.uk}
\par Mark Janssen \tipmail{mpc.janssen}{gmail.com}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&14 July 2009\\
Posting History:&
\\
&\\Abstract:&
This document describes a set of conventions that it is suggested people use when writing Tcl code. It is substantially based on the Tcl/Tk Engineering Manual \cite{tip247}.
\\\hline\hline
\textbf{TIP \#353}:&\textbf{NR-enabled Expressions for Extensions}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&29 July 2009\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes the new public routine \textbf{Tcl\_NRExprObj} to provide extension commands that evaluate Tcl expressions the ability to do so in a non-recursive manner.
\\\hline\hline
\textbf{TIP \#354}:&\textbf{Minor Production-Driven TclOO Revisions}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&26 August 2009\\
Posting History:&
\\
&\\Abstract:&
This TIP describes a few small changes required for solving issues that have been found when using TclOO in production.
\\\hline\hline
\textbf{TIP \#355}:&\textbf{Stop Fast Recycling of Channel Names on Unix}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&01 September 2009\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to put an end to the unix-specific habit of naming channels after the underlying file descriptor, by using a much longer-lived incremented counter instead.
\\\hline\hline
\textbf{TIP \#356}:&\textbf{NR-enabled Substitutions for Extensions}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&17 September 2009\\
Posting History:&
\\
Keywords:&Tcl, C API, subst\\
&\\Abstract:&
This TIP proposes the new public routine \textbf{Tcl\_NRSubstObj} to provide extension commands that evaluate Tcl substitutions the ability to do so in a non-recursive manner.
\\\hline\hline
\textbf{TIP \#357}:&\textbf{Export TclLoadFile}\\
Version:&\tipversion$Revision: 1.14 $\\
Author:&Kevin Kenny \tipmail{kevin.b.kenny}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&01 October 2009\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to promote the internal calls, \textit{TclLoadFile} and \textit{TclpFindSymbol} to the external API, making them available to C extensions. In addition, it proposes to introduce a \textit{Tcl\_FSUnloadFile} to the VFS layer, removing the weird duplicate client data from \textit{TclLoadFile} and wrapping all necessary data into the \textbf{Tcl\_LoadHandle}
\\\hline\hline
\textbf{TIP \#358}:&\textbf{Suppress Empty List Element Generation from the Split Command}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&George Petasis \tipmail{petasis}{iit.demokritos.gr}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&04 October 2009\\
Posting History:&
\\
Keywords:&Tcl, list extraction, parsing\\
&\\Abstract:&
The \textbf{split} command will create empty list elements when adjacent split characters are found in the input. In some cases these empty list elements are not desired, so this TIP proposes a new switch to disable their generation.
\\\hline\hline
\textbf{TIP \#359}:&\textbf{Extended Window Manager Hint Support}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&21 December 2009\\
Posting History:&
\\
Keywords:&Tk, X11, ewmh, window manager\\
&\\Abstract:&
The \textbf{wm attributes} command will be extended to accept a \textbf{-type} option when running on the X Window system to manipulate the extended window manager hints for Tk toplevel windows.
\\\hline\hline
\textbf{TIP \#360}:&\textbf{Modernize X11 Menus}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Pat Thoyts \tipmail{patthoyts}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&24 December 2009\\
Posting History:&
\\
Keywords:&Tk, X11, menu\\
&\\Abstract:&
This TIP proposes to modernize the functionality of the Tk menus on X11 to bring Tk up to date with reference to other toolkits on this platform.
\\\hline\hline
\textbf{TIP \#361}:&\textbf{Releasing Channel Buffers}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Wayne Cuddy \tipmail{wcuddy}{useunix.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&03 February 2010\\
Posting History:&
\\
&\\Abstract:&
Tcl should provide a mechanism by which a channel's output buffer can be released without requiring that Tcl flush any remaining data in the buffer to the operating system. This is of particular interest with output mechanisms which can block indefinitely causing the interpreter to consume unnecessary resources or prevent the interpreter from exiting.
\\\hline\hline
\textbf{TIP \#362}:&\textbf{Simple 32 and 64 bit Registry Support}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Damon Courtney \tipmail{damon}{tclhome.com}
\par Kevin Kenny \tipmail{kevin.b.kenny}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&01 March 2010\\
Posting History:&
\\
Keywords:&Windows, Tcl\\
&\\Abstract:&
Add new options to the \textbf{registry} command on Windows to allow it to specify that the action should be taken specifically on the 32 or 64 bit registry.
\\\hline\hline
\textbf{TIP \#363}:&\textbf{Vector Math in the Tcl Core}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Karl C. Hansen \tipmail{Karl.Hansen}{BrilliantPoints.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Pending\\
Created:&02 March 2010\\
Posting History:&
\\
Keywords:&expand, {*}, vector, math\\
&\\Abstract:&
The ``expand'' operator --- \textbf{\{*\}} --- was adopted in Tcl 8.5 and is very useful for simplifying code involving lists. It is proposed to add this operator to the list of actions performed during processing of double-quote ("), joining the \textbf{\$}, \textbf{[}, and \textbf{\(\backslash\)}, and to modify the behavior of \textbf{\$} in variable substitution. The proposed behavior \textit{will} break existing substitution, but a trivial quoted-string substitution restores original behavior with the new approach. The proposed approach will enable eventual incorporation of vector-math to the Tcl engine without changing any of the existing syntax.
\\\hline\hline
\textbf{TIP \#364}:&\textbf{Threading Support: Configuration and Package}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&19 March 2010\\
Posting History:&
\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP changes the the default configuration for building to threaded on all platforms where this is not already the case (primarily Unix other than MacOS X) and adds the Thread package to the set of packages included by default.
\\\hline\hline
\textbf{TIP \#365}:&\textbf{Add Python Compatibility Mode}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&No voting\\
Created:&01 April 2010\\
Posting History:&
\\
Keywords:&Look at the date\\
&\\Abstract:&
This TIP adds support for reading and evaluating code written in Python to the \textit{tclsh} interpreter.
\\\hline\hline
\textbf{TIP \#366}:&\textbf{Variable Sized Indicators for Menubuttons}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Russell Davidson \tipmail{russelld}{actarg.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&29 April 2010\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
This TIP is to allow custom sizing of menubutton indicators using \textbf{-indwidth} and \textbf{-indheight} as options.
\\\hline\hline
\textbf{TIP \#367}:&\textbf{A Command to Remove Elements from a List}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&18 May 2010\\
Posting History:&
\\
Keywords:&Tcl, delete, item\\
&\\Abstract:&
This TIP proposes a command, \textbf{lremove}, that takes a list value and a collection of indices, and returns a list that is the input list with the elements at those indices removed.
\\\hline\hline
\textbf{TIP \#368}:&\textbf{Listbox Justification Option}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Russell Davidson \tipmail{russelld}{actarg.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&10 May 2010\\
Posting History:&
\\
Obsoleted By:&TIP \#441\\
Keywords:&Tk\\
&\\Abstract:&
This TIP is to allow right and center justification of listboxes using \textbf{-justify} as an option.
\\\hline\hline
\textbf{TIP \#369}:&\textbf{Widget cargo command}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Russell Davidson \tipmail{russelld}{actarg.com}
\par Trevor Davel \tipmail{twylite}{crypt.co.za}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&15 July 2010\\
Posting History:&
\\
Keywords:&Tk, user-defined data, dictionary\\
&\\Abstract:&
This TIP is to add a \textbf{cargo} subcommand to widgets for storing data in a data dictionary. This TIP is related to \cite{tip349}.
\\\hline\hline
\textbf{TIP \#370}:&\textbf{Extend Tk's selection with a -time option}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&George Petasis \tipmail{petasis}{iit.demokritos.gr}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&04 August 2010\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes the addition of a new argument to the Tk command \textbf{selection}, for specifying a timestamp that should be used in order to retrieve a selection.
\\\hline\hline
\textbf{TIP \#371}:&\textbf{Improvements for the dict command}\\
Version:&\tipversion$Revision: 1.3 $\\
Authors:&Thomas Perschak \tipmail{tombert}{gmx.at}
\par Trevor Davel \tipmail{twylite}{crypt.co.za}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&05 August 2010\\
Posting History:&
\\
&\\Abstract:&
The \textbf{dict} command is limited by allowing manipulation of only the first level of key elements. Not only should the \textbf{dict get} accept a nested key list, but also the other commands like \textbf{dict replace}.
\\\hline\hline
\textbf{TIP \#372}:&\textbf{Multi-argument Yield for Coroutines}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Colin McCormack \tipmail{colin}{chinix.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&11 August 2010\\
Posting History:&
\\
Discussions To:&http://wiki.tcl.tk/26006\\
Obsoleted By:&TIP \#396\\
Keywords:&coroutine, yield\\
&\\Abstract:&
This TIP proposes a command that allows a coroutine to accept multiple arguments being passed in on return from yield.
\\\hline\hline
\textbf{TIP \#373}:&\textbf{Improved Yielding Support for Coroutines}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Miguel Sofer \tipmail{msofer}{users.sourceforge.net}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Pending\\
Created:&12 August 2010\\
Posting History:&
\\
Obsoletes:&TIP \#372\\
Obsoleted By:&TIP \#375\\
Keywords:&coroutine, yield\\
&\\Abstract:&
This TIP proposes two new commands that improve control over the yielding behaviour of coroutines.
\\\hline\hline
\textbf{TIP \#374}:&\textbf{Stackless Vwait}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Thomas Perschak \tipmail{tombert.group}{live.at}
\par Trevor Davel \tipmail{twylite}{crypt.co.za}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&13 August 2010\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a way to have multiple procedures waiting for an event to happen, where the command that gets executed depends on the order of the events.
\\\hline\hline
\textbf{TIP \#375}:&\textbf{Symmetric Coroutines and Yieldto}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Miguel Sofer \tipmail{msofer}{users.sourceforge.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&12 August 2010\\
Posting History:&
\\
Obsoletes:&TIP \#373\\
Obsoleted By:&TIP \#396\\
Keywords:&coroutine, yield\\
&\\Abstract:&
The new command \textbf{yieldto} allows a coroutine to suspend its execution and tailcall into an arbitrary command. If the new command is another coroutine's resume command we obtain symmetric coroutines.
\\\hline\hline
\textbf{TIP \#376}:&\textbf{Bundle sqlite3 and tdbc::sqlite3 Packages}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Don Porter \tipmail{dgp}{users.sf.net}
\par D. Richard Hipp \tipmail{drh}{hwaci.com}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&14 September 2010\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes the packages \textbf{sqlite3} and \textbf{tdbc::sqlite3} be re-distributed as part of the Tcl source code distribution.
\\\hline\hline
\textbf{TIP \#377}:&\textbf{Portably Determining the Number of Processors in the System}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Andreas Kupries \tipmail{andreask}{activestate.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Pending\\
Created:&13 September 2010\\
Posting History:&
\\
&\\Abstract:&
A C API and Tcl command are proposed which return the number of CPUs (a.k.a. Processors a.k.a. Cores) in the system, portably wrapping the OS specific APIs for doing so.
\\\hline\hline
\textbf{TIP \#378}:&\textbf{Fixing the Performance of TIP 280}\\
Version:&\tipversion$Revision: 1.3 $\\
Authors:&Andreas Kupries \tipmail{andreask}{activestate.com}
\par Jeff Hobbs \tipmail{jeffh}{activestate.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&04 October 2010\\
Posting History:&
\\
&\\Abstract:&
A Tcl command is proposed which enable a user of Tcl to disable the most performance intensive parts of the \cite{tip280} implementation, at the loss of some detail.
\\\hline\hline
\textbf{TIP \#379}:&\textbf{Add a Command for Delivering Events Without Tk}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Will Duquette \tipmail{will}{wjduquette.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&17 October 2010\\
Posting History:&
\\
Keywords:&event\\
&\\Abstract:&
This proposal defines the \textbf{hook} ensemble command, which implements the Subject/Observer pattern. It allows \textit{subjects}, which may be modules, objects, widgets, and so forth, to synchronously call \textit{hooks} which may be bound to an arbitrary number of subscribers, called \textit{observers}. A subject may call any number of distinct hooks, and any number of observers can bind callbacks to a particular hook called by a particular subject. Hook bindings can be queried and deleted.
\\\hline\hline
\textbf{TIP \#380}:&\textbf{TclOO Slots for Flexible Declarations}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&20 October 2010\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a system that enables a more flexible system of handling all declarations relating to classes and objects that resolve to control over a list of things. This system, which will use TclOO to configure itself, will enable the scripting of additional mechanisms for manipulating declarations and will also include a change to the default behavior of the \textbf{filter} and \textbf{variable} declarations, where the standard ``replace everything'' behavior was found to be non-obvious in practice. In order to enable this, the exact behavior of the \textbf{unknown} method mechanism will be slightly varied.
\\\hline\hline
\textbf{TIP \#381}:&\textbf{Call Chain Introspection and Control}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&20 October 2010\\
Posting History:&
\\
Keywords:&TclOO, iTcl\\
&\\Abstract:&
This TIP proposes mechanisms for inspecting the TclOO call chain for a particular method, both externally via \textbf{info} and from within a call to that method. It also proposes a mechanism that will allow the traversal of the call chain in a more controlled way than at present with the \textbf{next} command.
\\\hline\hline
\textbf{TIP \#382}:&\textbf{Let tk\_getSaveFile ignore file overwrites}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Pawel Salawa \tipmail{pawelsalawa}{gmail.com}
\par Don Porter \tipmail{dgp}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5.11\\
Vote:&Done\\
Created:&02 November 2010\\
Posting History:&
\\
Keywords:&Tk, dialog\\
&\\Abstract:&
This document describes new option for \textbf{tk\_getSaveFile} named \textbf{-confirmoverwrite} to control whether a warning dialog is displayed when selecting an existing file for overwriting.
\\\hline\hline
\textbf{TIP \#383}:&\textbf{Injecting Code into Suspended Coroutines}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\par Miguel Sofer \tipmail{msofer}{users.sourceforge.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&03 December 2010\\
Posting History:&
\\
Keywords:&debugging, coroutine, yielded\\
&\\Abstract:&
This proposes a new command, \textbf{coroinject}, that allows a programmer to inject arbitrary code into a suspended coroutine, for execution on next resumption.
\\\hline\hline
\textbf{TIP \#384}:&\textbf{Add File Alteration Monitoring to the Tcl Core}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Reinhard Max \tipmail{max}{tclers.tk}
\par Gerald W. Lester \tipmail{Gerald.Lester}{cox.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&02 December 2010\\
Posting History:&
\\
Keywords:&kqueue, inotify, dnotify, gamin, FSevents, fam\\
&\\Abstract:&
This TIP proposes to add capabilities for monitoring changes in the file system to the Tcl core.
\\\hline\hline
\textbf{TIP \#385}:&\textbf{Functional Traces On Variables }\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Pending\\
Created:&13 February 2011\\
Posting History:&
\\
Keywords:&Tcl, traces\\
&\\Abstract:&
Functional traces are new variants of variable traces, that rely purely on value passing rather than variable updating. Applied to array traces, they allow a much more efficient implementation of various storage backends.
\\\hline\hline
\textbf{TIP \#386}:&\textbf{Relocation of Tcl/Tk Source Control Repositories}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Kevin B. Kenny \tipmail{kennykb}{acm.org}
\par Kevin Kenny \tipmail{kevin.b.kenny}{gmail.com}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&01 March 2011\\
Posting History:&
\\
Keywords:&Fossil, DVCS\\
&\\Abstract:&
This TIP describes the changed locations and procedures for source control for Tcl/Tk.
\\\hline\hline
\textbf{TIP \#387}:&\textbf{Unified Yield Command Syntax}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Lars Hellström \tipmail{Lars.Hellstrom}{residenset.net}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Pending\\
Created:&30 May 2011\\
Posting History:&
\\
Obsoleted By:&TIP \#396\\
Keywords:&Tcl, coroutine\\
&\\Abstract:&
This document describes the \textit{syntax} of a unified \textbf{yield} command, which is designed so that it can combine all features of the various yield-related commands proposed during 2010.
\\\hline\hline
\textbf{TIP \#388}:&\textbf{Extending Unicode literals past the BMP}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Jan Nijtmans \tipmail{jan.nijtmans}{users.sf.net}
\par Jan Nijtmans \tipmail{jan.nijtmans}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&10 August 2011\\
Posting History:&
\\
Discussions To:&Tcl Core list\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes to extend Tcl's syntax in order to be able to cope with quoted forms of Unicode characters outside the Basic Multilingual Plane.
\\\hline\hline
\textbf{TIP \#389}:&\textbf{Full support for Unicode 8.0 and later}\\
Version:&\tipversion$Revision: 1.4 $\\
Authors:&Jan Nijtmans \tipmail{jan.nijtmans}{users.sf.net}
\par Jan Nijtmans \tipmail{jan.nijtmans}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&23 August 2011\\
Posting History:&
\\
Discussions To:&Tcl Core list\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP proposes to add full support for all characters in Unicode 8.0+, inclusive the characters \tiprangle{}= \textbf{U+010000}.
\\\hline\hline
\textbf{TIP \#390}:&\textbf{A Logging API for Tcl}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Jeff Rogers \tipmail{dvrsn}{diphi.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&27 October 2011\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a standard API for logging in Tcl applications, both at the Tcl and C level.
\\\hline\hline
\textbf{TIP \#391}:&\textbf{Support for UDP Sockets in Tcl}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Jeff Rogers \tipmail{dvrsn}{diphi.com}
\\
State:&Withdrawn\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&26 October 2011\\
Posting History:&
\\
Obsoleted By:&TIP \#409\\
&\\Abstract:&
This proposal is to add UDP socket support to the core in a clean and unobtrusive way.
\\\hline\hline
\textbf{TIP \#392}:&\textbf{Allow Bignums to be Disabled at Runtime on a Per-Interp Basis}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Pending\\
Created:&30 October 2011\\
Posting History:&
\\
Keywords:&bignum, runaway, safe, math, precision, integer, tcl\\
&\\Abstract:&
This TIP proposes the ability to enable or disable all use of bignums at runtime on a per-interpreter basis. The mechanism being presented to accomplish this goal has been designed to be generic enough so that it can be used for other per-interpreter configuration parameters in the future.
\\\hline\hline
\textbf{TIP \#393}:&\textbf{Add -command Option to lsearch}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Pawel Salawa \tipmail{pawelsalawa}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&25 April 2011\\
Posting History:&
\\
&\\Abstract:&
This document describes new option for \textbf{lsearch} named \textbf{-command} that lets the developer define a custom comparision algorithm for searching for an element of a list.
\\\hline\hline
\textbf{TIP \#394}:&\textbf{Platform-Independent Handling of Contemporary Mice}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Andreas Leitgeb \tipmail{avl}{logic.at}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&30 November 2011\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a change to Tk's Events such as to support new features of modern pointer devices (mice) in a platform-independent way.
\\\hline\hline
\textbf{TIP \#395}:&\textbf{New 'string is entier' Command}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Jos Decoster \tipmail{jos.decoster}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&13 December 2011\\
Posting History:&
\\
Discussions To:&news:comp.lang.tcl\\
Obsoletes:&TIP \#347\\
Keywords:&Tcl\\
&\\Abstract:&
The \textbf{string is} command supports tests for a number of Tcl's basic types, for example, integers, doubles, and booleans. One common case is missing: checking if a value is an integer number without particular storage width, unlike \textbf{string is integer} and \textbf{string is wideinteger}. This document proposes to augment the \textbf{string is} command with a \textbf{string is entier}.
\\\hline\hline
\textbf{TIP \#396}:&\textbf{Symmetric Coroutines, Multiple Args, and yieldto}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&11 February 2012\\
Posting History:&
\\
Obsoletes:&TIP \#372\\
Keywords:&coroutine, yield, yieldto\\
&\\Abstract:&
A new command, \textbf{yieldto}, is proposed that allows a corouting to suspend its execution and tailcall into an arbitrary command. If the new command is another coroutine's resume command, we obtain symmetric coroutines. If the new command is the \textbf{return} command, we obtain the ability for a coroutine to present an unusual status (e.g., \textit{error}, \textit{break}, \textit{continue} or \textit{return}) to its caller. The \textbf{yieldto} command also marshals the arguments as a list when the yielding coroutine is next invoked, allowing for the transmission of multiple arguments.
\\\hline\hline
\textbf{TIP \#397}:&\textbf{Extensible Object Copying}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&13 February 2012\\
Posting History:&
\\
Keywords:&Tcl, TclOO, copy, clone\\
&\\Abstract:&
This TIP proposes a mechanism whereby an object or class can provide additional control over how it gets copied to a new one by the \textbf{oo::copy} command.
\\\hline\hline
\textbf{TIP \#398}:&\textbf{Quickly Exit with Non-Blocking Blocked Channels}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&24 February 2012\\
Posting History:&
\\
Keywords:&close, exit, flush, blocking, nonblocking\\
&\\Abstract:&
This TIP reverts an age-old documented behavior that is useless, and the ill effects of which cannot be circumvented: Tcl's insistence on flushing even non-blocking channels on exit.
\\\hline\hline
\textbf{TIP \#399}:&\textbf{Dynamic Locale Changing for msgcat}\\
Version:&\tipversion$Revision: 1.18 $\\
Author:&Harald Oehlmann \tipmail{harald.oehlmann}{elmicron.de}
\\
State:&Accepted\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&27 March 2012\\
Posting History:&
\\
Obsoleted By:&TIP \#412\\
Keywords:&Tcl, localization, msgcat\\
&\\Abstract:&
This TIP adds dynamic locale switching capabilities to the \textbf{msgcat} package.
\\\hline\hline
\textbf{TIP \#400}:&\textbf{Setting the Compression Dictionary and Other 'zlib' Updates}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&30 March 2012\\
Posting History:&
\\
Keywords:&Tcl, zlib\\
&\\Abstract:&
Sometimes it is necessary to set the compression dictionary so that a sequence of bytes may be compressed more efficiently (and decompressed as well). This TIP exposes that functionality. It also reduces the number of inconsistencies in the \textbf{zlib} command.
\\\hline\hline
\textbf{TIP \#401}:&\textbf{Comment Words with Leading {\#}}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Lars Hellström \tipmail{Lars.Hellstrom}{residenset.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&29 April 2012\\
Posting History:&
\\
&\\Abstract:&
The basic syntax rules of Tcl (the ``dodekalogue'') are modified to allow words that are comments. In analogy with the argument expansion \textbf{\{*\}}, such comment words will begin with \textbf{\{\#\}} (left brace, hash sign, right brace). The change concerns both words in scripts and, more importantly, words in lists.
\\\hline\hline
\textbf{TIP \#402}:&\textbf{General Platform UNC Support}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Jan Nijtmans \tipmail{jan.nijtmans}{users.sf.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&16 July 2011\\
Posting History:&
\\
Discussions To:&Tcl Core list\\
Keywords:&Tcl\\
&\\Abstract:&
Both Windows and Cygwin interpret paths starting with \textbf{//} as a special prefix, indicating that the path has the form: \textbf{//server/share/file\_path}. Windows has built-in handling of such paths built-in. UNIX doesn't have this. It could be implemented through a VFS extension, but there is one problem: File normalization on UNIX collapes multiple slashes into a single slash, so this would convert the UNC path into a normal path. This makes it impossible to implement a VFS extension which uses \textbf{//} as prefix, implementing connection to a Samba server using the UNC path format.
\\\hline\hline
\textbf{TIP \#403}:&\textbf{Web Colors for Tk}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Jan Nijtmans \tipmail{jan.nijtmans}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&17 July 2011\\
Posting History:&
\\
Discussions To:&Tcl Core list\\
Keywords:&Tk\\
&\\Abstract:&
This TIP proposes some modifications in the RGB values of various colors as used in Tk, bringing those colors more in line with various W3C standards.
\\\hline\hline
\textbf{TIP \#404}:&\textbf{Let Message Catalogs get the Locale from their File Name}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&Harald Oehlmann \tipmail{harald.oehlmann}{elmicron.de}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&17 July 2011\\
Posting History:&
\\
Discussions To:&Tcl Core list\\
Keywords:&msgcat, convention\\
&\\Abstract:&
This TIP proposes a mechanism for coupling locales more strongly to the names of the files that define them, an already-recommended practice, so as to make it less error-prone to produce message catalogs.
\\\hline\hline
\textbf{TIP \#405}:&\textbf{Add Collecting Loops, the 'lmap' and 'dict map' Commands}\\
Version:&\tipversion$Revision: 1.10 $\\
Authors:&Trevor Davel \tipmail{twylite}{crypt.co.za}
\par Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&31 July 2012\\
Posting History:&
\\
Keywords:&Tcl, mapeach, loop, accumulator\\
&\\Abstract:&
The \textbf{lmap} command is a collecting loop with the semantics of \textbf{foreach}. When the loop begins an accumulator is set to an empty list. In any iteration where the body of the loop completes normally, the result of the body is appended to the accumulator list. The return value for \textbf{lmap} is the contents of the accumulator. The \textbf{dict map} command is an equivalent collecting loop with the semantics based off \textbf{dict for}.
\\\hline\hline
\textbf{TIP \#406}:&\textbf{"C" is for Cookie}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Pending\\
Created:&01 August 2012\\
Posting History:&
\\
&\\Abstract:&
The ``http'' package needs cookie support, especially to support complex modern web authentication protocols. This TIP defines a pluggable interface and a TclOO class that implements that interface so that Tcl programmers can control just what is shared and stored, and where.
\\\hline\hline
\textbf{TIP \#407}:&\textbf{The String Representation of Tcl Lists: the Gory Details}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Donal K. Fellows \tipmail{dkf}{users.sf.net}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Draft\\Type:&Informative\\
Vote:&No voting\\
Created:&06 August 2012\\
Posting History:&
\\
&\\Abstract:&
This document explains some of the details behind Tcl lists; it is there to expose documentation that was previously only present as comments in Tcl's source code.
\\\hline\hline
\textbf{TIP \#408}:&\textbf{Allow Any Command for expr Functions}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Brian Griffin \tipmail{brian_griffin}{mentor.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&17 August 2012\\
Posting History:&
\\
&\\Abstract:&
Proposed expansion of what constitutes a function in an \textbf{expr} expression.
\\\hline\hline
\textbf{TIP \#409}:&\textbf{UDP in Tcl}\\
Version:&\tipversion$Revision: 1.19 $\\
Authors:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\par Colin McCormack \tipmail{colin}{chinix.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&17 August 2012\\
Posting History:&
\\
Obsoletes:&TIP \#391\\
Keywords:&udp, datagram, message\\
&\\Abstract:&
This TIP adds support for UDP in Tcl, with a pure event approach to packet reception (as opposed to hijacking the existing channel infrastructure).
\\\hline\hline
\textbf{TIP \#410}:&\textbf{Three Features of scan Adapted for binary scan/format}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Andreas Leitgeb \tipmail{avl}{logic.at}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&26 August 2012\\
Posting History:&
\\
&\\Abstract:&
This proposal specifies three new features for \textbf{binary scan} and \textbf{binary format} that already exist similarly for \textbf{scan}, namely: \textbf{\#} for consuming a count-value from the parameter list (like ``\textbf{scan \%*}''), \textbf{p} for writing current position to a consumed parameter variable (like ``\textbf{scan \%n}'') and returning a single parsed value if no parameter is left.
\\\hline\hline
\textbf{TIP \#411}:&\textbf{Improved Channel Introspection via "chan info"}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Pawel Salawa \tipmail{pawelsalawa}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&31 August 2012\\
Posting History:&
\\
&\\Abstract:&
This document describes new subcommand for \textbf{chan}, \textbf{chan info}, that provides a unified interface to deeper introspection of information about a particular channel.
\\\hline\hline
\textbf{TIP \#412}:&\textbf{Dynamic Locale Changing for msgcat with On-Demand File Load}\\
Version:&\tipversion$Revision: 1.9 $\\
Authors:&Harald Oehlmann \tipmail{harald.oehlmann}{elmicron.de}
\par Harald Oehlmann \tipmail{oehhar}{users.sourceforge.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&27 March 2012\\
Posting History:&
\\
Obsoletes:&TIP \#399\\
Keywords:&Tcl, localization, msgcat\\
&\\Abstract:&
This TIP adds dynamic locale switching capabilities to the \textbf{msgcat} package.
\\\hline\hline
\textbf{TIP \#413}:&\textbf{Unicode Support for 'string is space' and 'string trim'}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Jan Nijtmans \tipmail{jan.nijtmans}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&08 October 2012\\
Posting History:&
\\
Discussions To:&Tcl Core list\\
Keywords:&Tcl\\
&\\Abstract:&
This TIP is in fact a re-consideration of \cite{tip318}, in that it attempts to define, once and for all, for which characters \textbf{string is space} should return 1 and which characters \textbf{string trim} should trim.
\\\hline\hline
\textbf{TIP \#414}:&\textbf{Add (back) Tcl\_InitSubsystems as Public API}\\
Version:&\tipversion$Revision: 1.25 $\\
Authors:&Brian Griffin \tipmail{brian_griffin}{mentor.com}
\par Jan Nijtmans \tipmail{jan.nijtmans}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&15 October 2012\\
Posting History:&
\\
&\\Abstract:&
The ability to initialize just the lower level Tcl subsystems used to be part of the public API, now it is no longer exposed. This TIP proposes that it be re-exposed.
\\\hline\hline
\textbf{TIP \#415}:&\textbf{Enable Easy Creation of Circular Arc Segments}\\
Version:&\tipversion$Revision: 1.11 $\\
Author:&Simon Geard \tipmail{simon}{whiteowl.co.uk}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&16 October 2012\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
Creating a segment of a circular arc is unnecessarily difficult using the \textbf{canvas} arc. This TIP proposes a simple extension of the syntax to support the creation of circular arc segments in a natural way. A similar extension to support the more general elliptical arc segments is outside the scope of this TIP.
\\\hline\hline
\textbf{TIP \#416}:&\textbf{New Options for 'load': -global and -lazy}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Christian Delbaere \tipmail{cdelbaere}{rogers.com}
\par Jan Nijtmans \tipmail{nijtmans}{users.sf.net}
\par Jan Nijtmans \tipmail{jan.nijtmans}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Done\\
Created:&31 October 2012\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes enhancing the Tcl \textbf{load} command with the additional options \textbf{-global} and \textbf{-lazy}. It is implemented on top of \cite{tip357}, by defining a meaning to the \textbf{flags} parameter already defined there.
\\\hline\hline
\textbf{TIP \#417}:&\textbf{Use Explicit Option Names for "file tempfile"}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Christophe Curis \tipmail{christophe.curis}{free.fr}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&16 November 2012\\
Posting History:&
\\
Keywords:&Tcl, future expansion, extensibility\\
&\\Abstract:&
This TIP proposes altering the way in which optional arguments are specified to \textbf{file tempfile} (see \cite{tip210}) to make them easier to understand and extend in the future.
\\\hline\hline
\textbf{TIP \#418}:&\textbf{Add [binary] Subcommands for In-Place Modification}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Jeff Rogers \tipmail{dvrsn}{diphi.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&27 August 2012\\
Posting History:&
\\
Keywords:&Tcl, binary data\\
&\\Abstract:&
This TIP proposes adding new subcommands to the \textbf{binary} to better enable parsing and manipulation of binary values.
\\\hline\hline
\textbf{TIP \#419}:&\textbf{A New Command for Binding to Tk Events}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Jeff Rogers \tipmail{dvrsn}{diphi.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&28 August 2012\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a more modern mechanism for binding callbacks to Tk's events.
\\\hline\hline
\textbf{TIP \#420}:&\textbf{'vexpr', a Vector Expression Command}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Sean Woods \tipmail{yoda}{etoyoc.com}
\par Andreas Kupries \tipmail{andreask}{activestate.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&15 November 2012\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to add a new command to Tcl for manipulating vectors and related mathematical objects. The command, \textbf{vexpr}, will provide C-optimized implementations of generally useful scalar, 2D, 3D and affine transforms. \textbf{vexpr} is a complement to \textbf{expr}, and expects to take in vector arguments and return vector results.
\\\hline\hline
\textbf{TIP \#421}:&\textbf{A Command for Iterating Over Arrays}\\
Version:&\tipversion$Revision: 1.1 $\\
Authors:&Karl Lehenbauer \tipmail{karllehenbauer}{gmail.com}
\par Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&28 November 2012\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes an efficient mechanism for iterating over the contents of a large array.
\\\hline\hline
\textbf{TIP \#422}:&\textbf{Don't Use stdarg.h/va\_list in Public API}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Jan Nijtmans \tipmail{nijtmans}{users.sf.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Pending\\
Created:&02 January 2013\\
Posting History:&
\\
Keywords:&Tcl, API removal, varargs\\
&\\Abstract:&
This TIP proposes to remove all functions which use the \textit{va\_list} type from the public API, and it describes what extensions using this should do to make their extension portable on the mingw-w64 gcc compiler on the AMD64 platform.
\\\hline\hline
\textbf{TIP \#423}:&\textbf{Formatting Timestamps with Milliseconds}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Thomas Perschak \tipmail{tombert.group}{live.at}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&07 June 2013\\
Posting History:&
\\
Keywords:&Tcl, time, millisecond resolution\\
&\\Abstract:&
This TIP describes a change to \textbf{clock format} to allow it to handle timestamps with sub-second accuracy.
\\\hline\hline
\textbf{TIP \#424}:&\textbf{Improving [exec]}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&07 July 2013\\
Posting History:&
\\
Keywords:&Tcl, subprocess, execution\\
&\\Abstract:&
This extension overcomes day-1 limitations of [\textbf{exec}]'s syntax, allowing for unconstrained arguments to commands, and opening the path to more exotic redirections.
\\\hline\hline
\textbf{TIP \#425}:&\textbf{Internationalization of Default Panic Callback on Windows}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Jan Nijtmans \tipmail{jan.nijtmans}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&17 July 2013\\
Posting History:&
\\
Keywords:&Tcl, platform integration, i18n\\
&\\Abstract:&
The default panic proc on Windows console applications writes the message in UTF-8 to stderr. Unfortunately, the Windows console normally does not have UTF-8 as code page but some single-byte code page like CP1252. When using characters outside the ASCII range, that does not give the expected output in the console. This TIP proposes to add a new Console panic proc to the stub library, and modify the Tcl\_Main() macro to use it.
\\\hline\hline
\textbf{TIP \#426}:&\textbf{Determining the "Type" of Commands}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Donal K. Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&31 July 2013\\
Posting History:&
\\
Keywords:&introspection, commands, Tcl, Tk\\
&\\Abstract:&
This TIP describes a mechanism for determining what ``type'' of command a particular command is. This can be used as a prelude to performing other kinds of introspection, such as using \textbf{info body}, \textbf{namespace origin} or \textbf{interp alias}.
\\\hline\hline
\textbf{TIP \#427}:&\textbf{Introspection of Asynchronous Socket Connection}\\
Version:&\tipversion$Revision: 1.13 $\\
Authors:&Reinhard Max \tipmail{max}{suse.com}
\par Harald Oehlmann \tipmail{oehhar}{users.sourceforge.net}
\par Reinhard Max \tipmail{max}{tclers.tk}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6.4\\
Vote:&Done\\
Created:&16 March 2014\\
Posting History:&
\\
Keywords:&async socket connect, introspection, IPV6\\
&\\Abstract:&
This TIP describes a method to introspect the asynchronous connection process by an extension of the \textbf{fconfigure} interface in addition to \textbf{fconfigure -error}. This will enable better control over the asynchronous connection process, even in cases where the event loop is not in use.
\\\hline\hline
\textbf{TIP \#428}:&\textbf{Produce Error Dictionary from 'fconfigure -error'}\\
Version:&\tipversion$Revision: 1.26 $\\
Authors:&Harald Oehlmann \tipmail{oehhar}{users.sourceforge.net}
\par Harald Oehlmann \tipmail{harald.oehlmann}{users.sourceforge.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&16 March 2014\\
Posting History:&
\\
Keywords:&socket, non-blocking, error reporting, option dictionary\\
&\\Abstract:&
This TIP proposes a new method which allows to return the error message and the error code of a background socket error (as reported by \textbf{fconfigure -error}), similar to the option dictionaries produced by catch and try and consumed by return.
\\\hline\hline
\textbf{TIP \#429}:&\textbf{A 'string' Subcommand for Concatenation}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Andreas Leitgeb \tipmail{avl}{logic.at}
\par Alexandre Ferrieux \tipmail{alexandre.ferrieux}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6.2\\
Vote:&Done\\
Created:&27 July 2014\\
Posting History:&
\\
Keywords:&Tcl, cat, scriptlet result\\
&\\Abstract:&
This TIP describes a new (sub)command \textbf{string cat} to concatenate an arbitrary number of strings.
\\\hline\hline
\textbf{TIP \#430}:&\textbf{Add basic ZIP archive support to Tcl}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Sean Woods \tipmail{yoda}{etoyoc.com}
\par Donal Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\par Poor Yorick \tipmail{tk.tcl.tip}{pooryorick.com}
\par Harald Oehlmann \tipmail{oehhar}{users.sourceforge.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.6.3\\
Vote:&Pending\\
Created:&03 September 2014\\
Posting History:&
\\
Keywords:&virtual filesystem, zip, tclkit, boot, bootstrap\\
&\\Abstract:&
This proposal will add basic support for mounting zip archive files as virtual filesystems to the Tcl core.
\\\hline\hline
\textbf{TIP \#431}:&\textbf{Add 'tempdir' Subcommand to 'file'}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Kevin Pasko \tipmail{kevin.a.pasko}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.6.4\\
Vote:&Pending\\
Created:&10 September 2014\\
Posting History:&
\\
Keywords:&Tcl, directory, file\\
&\\Abstract:&
This TIP proposes adding a new \textbf{tempdir} subcommand to the \textbf{file} command, simplifying the effort required in creating uniquely named temporary directories at the scripting level.
\\\hline\hline
\textbf{TIP \#432}:&\textbf{Support for New Windows File Dialogs in Vista and Later}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Ashok P. Nadkarni \tipmail{apnmbx-wits}{yahoo.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6.3\\
Vote:&Done\\
Created:&20 September 2014\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes changing the \textbf{tk\_getOpenFile}, \textbf{tk\_getSaveFile} and \textbf{tk\_chooseDirectory} dialog box commands to display the new style file dialogs available on newer Windows versions.
\\\hline\hline
\textbf{TIP \#433}:&\textbf{Add \%M binding substitution}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\par Brian Griffin \tipmail{brian_griffin}{mentor.com}
\par Don Porter \tipmail{dgp}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6.4\\
Vote:&Done\\
Created:&25 February 2015\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes one new binding substitution, \textbf{\%M}, to access the number of script-based binding patterns matched so far for the event.
\\\hline\hline
\textbf{TIP \#434}:&\textbf{Specify Event Sources for 'vwait'}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Jos Decoster \tipmail{jos.decoster}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Pending\\
Created:&26 February 2015\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to extend the \textbf{vwait} Tcl command so the event sources can be specified, as is possible with the \textbf{Tcl\_DoOneEvent} C command.
\\\hline\hline
\textbf{TIP \#435}:&\textbf{Safe Mutex Disposal API}\\
Version:&\tipversion$Revision: 1.7 $\\
Authors:&Donal Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\par Joe Mistachkin \tipmail{joe}{mistachkin.com}
\\
State:&Rejected\\Type:&Project\\
Tcl Version:&8.6.5\\
Vote:&Done\\
Created:&16 May 2015\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes a new C API for improving mutex deletion.
\\\hline\hline
\textbf{TIP \#436}:&\textbf{Improve TclOO isa Introspection}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Donal Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6.5\\
Vote:&Done\\
Created:&30 June 2015\\
Posting History:&
\\
&\\Abstract:&
The various \textbf{info object isa} introspectors should not produce errors when given a non-object; the set membership tests should simply return boolean false in those cases.
\\\hline\hline
\textbf{TIP \#437}:&\textbf{Tk panedwindow options for proxy window}\\
Version:&\tipversion$Revision: 1.5 $\\
Authors:&Eric Boudaillier \tipmail{beric}{users.sf.net}
\par François Vogel \tipmail{fvogelnew1}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5.18\\
Vote:&Done\\
Created:&14 July 2015\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
The proxy window (i.e., the moving sash) of the Tk paned window widget is hard to see in some circumstances. This TIP adds three options allowing more control over the display of the proxy so that its visibility can be enhanced where required.
\\\hline\hline
\textbf{TIP \#438}:&\textbf{Ensure Line Metrics are Up-to-Date}\\
Version:&\tipversion$Revision: 1.16 $\\
Authors:&François Vogel \tipmail{fvogelnew1}{free.fr}
\par Jan Nijtmans \tipmail{jan.nijtmans}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6.5\\
Vote:&Done\\
Created:&01 November 2015\\
Posting History:&
\\
Keywords:&Tk, text\\
&\\Abstract:&
The text widget calculates line metrics asynchronously, for performance reasons. Because of this, some commands of the text widget may return wrong results if the asynchronous calculations are not over. This TIP is about providing the user with ways to ensure that line metrics are up-to-date.
\\\hline\hline
\textbf{TIP \#439}:&\textbf{Semantic Versioning}\\
Version:&\tipversion$Revision: 1.8 $\\
Author:&Jan Nijtmans \tipmail{jan.nijtmans}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&08 December 2015\\
Posting History:&
\\
&\\Abstract:&
The version schema used by Tcl and Tk has the form MAJOR.MINOR.PATCH, which is the same schema used by ``Semantic Versioning'' [\url{http://semver.org/}]. For alpha and beta releases the schema is MAJOR.MINORaPATCH resp MAJOR.MINORbPATCH, which is not following the ``Semantic Versioning'' rules, but it's close. This TIP proposes to start using ``Semantic Versioning'' for Tcl and Tk, starting with Tcl/Tk 8.7, without making it mandatory for extensions and Tcl modules: existing extensions and modules written for Tcl/Tk 8.6 or lower must cooperate unmodified with later 8.x versions as well.
\\\hline\hline
\textbf{TIP \#440}:&\textbf{Add engine to tcl\_platform Array}\\
Version:&\tipversion$Revision: 1.13 $\\
Authors:&Joe Mistachkin \tipmail{joe}{mistachkin.com}
\par Jan Nijtmans \tipmail{jan.nijtmans}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&14 January 2016\\
Posting History:&
\\
Keywords:&language implementation, platform\\
&\\Abstract:&
This TIP proposes a mechanism for determining the implementation of the Tcl language currently in use.
\\\hline\hline
\textbf{TIP \#441}:&\textbf{Add -justify Configuration Option to the listbox Widget}\\
Version:&\tipversion$Revision: 1.3 $\\
Authors:&François Vogel \tipmail{fvogelnew1}{users.sf.net}
\par François Vogel \tipmail{fvogelnew1}{free.fr}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6.5\\
Vote:&Done\\
Created:&18 January 2016\\
Posting History:&
\\
Keywords:&Tk, listbox\\
&\\Abstract:&
Despite the \textbf{listbox} widget already having numerous configuration options, some users need more refinements and have requested the possibility to control the justification of the text displayed in the items of the listbox. This TIP proposes to add this option.
\\\hline\hline
\textbf{TIP \#442}:&\textbf{Display text in progressbars}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&Ren\'{e} Zaumseil \tipmail{rzaumseil}{kkg.ch}
\par Kevin B Kenny \tipmail{kevin.b.kenny}{gmail.com}
\par Andreas Leitgeb \tipmail{avl}{logic.at}
\par Kevin Kenny \tipmail{Kevin.B.Kenny}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Done\\
Created:&17 February 2016\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
Horizontal progress bars should support the ability to display text inside the progress bar. Buttons should allow justification of multiline texts.
\\\hline\hline
\textbf{TIP \#443}:&\textbf{More Tag Configuration Options for the Text Widget}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&François Vogel \tipmail{fvogelnew1}{free.fr}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6.6\\
Vote:&Done\\
Created:&09 February 2016\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
Despite the \textbf{text} widget already has numerous configuration options, some users need more refinements and have requested new tag configuration options. This TIP proposes to add these options, when deemed relevant.
\\\hline\hline
\textbf{TIP \#444}:&\textbf{Add "weekdays" unit in clock add}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Pietro Cerutti \tipmail{gahr}{gahr.ch}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Done\\
Created:&23 February 2016\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes an enhancement to the \textbf{clock add} command to support performing days arithmetic using weekdays only.
\\\hline\hline
\textbf{TIP \#445}:&\textbf{Tcl\_ObjType Utility Routines}\\
Version:&\tipversion$Revision: 1.7 $\\
Author:&Don Porter \tipmail{dgp}{users.sourceforge.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&18 March 2016\\
Posting History:&
\\
&\\Abstract:&
Proposes additional public routines useful for extensions that implement custom \textit{'Tcl\_ObjType}s.
\\\hline\hline
\textbf{TIP \#446}:&\textbf{Introspect Undo/Redo Stack Depths}\\
Version:&\tipversion$Revision: 1.9 $\\
Author:&François Vogel \tipmail{fvogelnew1}{free.fr}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6.6\\
Vote:&Done\\
Created:&05 April 2016\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
Tk features a generic undo/redo mechanism (see \cite{tip104}). This is used in practice by the \textbf{text} widget, within the \textbf{edit} command. The present TIP proposes to add two new subcommands to the \textbf{edit} command allowing the user to know whether undo and redo is possible for a \textbf{text} widget.
\\\hline\hline
\textbf{TIP \#447}:&\textbf{Execution Time Verbosity Levels in tcltest::configure}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Pietro Cerutti \tipmail{gahr}{gahr.ch}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Done\\
Created:&20 April 2016\\
Posting History:&
\\
Keywords:&Tcl, tcltest\\
&\\Abstract:&
The \textbf{-verbose} option of the \textbf{tcltest::configure} command accepts a set of verbosity levels to specify what pieces of information about tests the user wants reported. This TIP proposes the addition of two new verbosity levels to report information about the execution time of tests.
\\\hline\hline
\textbf{TIP \#448}:&\textbf{Update Tcl\_SetNotifier to Reinitialize Event Loop}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Jeff Rogers \tipmail{dvrsn}{diphi.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&24 May 2016\\
Posting History:&
\\
Keywords:&Tcl, C API\\
&\\Abstract:&
Tcl\_SetNotifier cannot be used in its current state to replace a notifier than has been initialized because pointers to the old initialized value are kept in the interp's private data. This TIP proposes a way to change that.
\\\hline\hline
\textbf{TIP \#449}:&\textbf{[text] undo/redo to Return Range of Characters}\\
Version:&\tipversion$Revision: 1.12 $\\
Author:&François Vogel \tipmail{fvogelnew1}{free.fr}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Done\\
Created:&07 June 2016\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
Tk features an undo/redo mechanism for the \textbf{text} widget. This TIP proposes that the \textbf{edit undo} and \textbf{edit redo} commands of the text widget return the ranges of characters impacted by the undo or redo operation.
\\\hline\hline
\textbf{TIP \#450}:&\textbf{Add [binary] subcommand "set" for in-place modification}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Arjen Markus \tipmail{arjen.markus895}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&18 July 2016\\
Posting History:&
\\
Keywords:&Tcl, binary data\\
&\\Abstract:&
This TIP proposes a simpler extension of the [binary] command than the related \cite{tip418}, namely just a subcommand \textbf{set} that updates an existing byte array in a variable instead of creating a new one like \textbf{binary format}. It does not propose an extension of the various formatting codes.
\\\hline\hline
\textbf{TIP \#451}:&\textbf{Modify [update] to Give Full Script Access to Tcl\_DoOneEvent}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Colin McCormack \tipmail{mcccol}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&10 August 2016\\
Posting History:&
\\
Keywords:&Tcl, event loop\\
&\\Abstract:&
This TIP add flags to \textbf{update} to represent all the flag values available to the underlying API, \textit{Tcl\_DoOneEvent()}, exposing them to script access.
\\\hline\hline
\textbf{TIP \#452}:&\textbf{Add "stubs" Package to or Along Side of TclTest}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Gerald Lester \tipmail{Gerald.Lester}{SAP.com}
\par Gerald W. Lester \tipmail{gerald.lester}{KnG-Consulting.net}
\par Gerald W. Lester \tipmail{Gerald.Lester}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.6\\
Vote:&Pending\\
Created:&10 August 2016\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes an enhancement to the \textbf{tcltest} package to add support for easy creation of test stubs, mocks and seams.
\\\hline\hline
\textbf{TIP \#453}:&\textbf{Tcl Based Automation for tcl/pkgs}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Sean Woods \tipmail{yoda}{etoyoc.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&13 September 2016\\
Posting History:&
\\
Keywords:&Build tooling\\
&\\Abstract:&
This TIP proposes replacing the \textbf{make package} process currently employed by the core with a Tcl-based build automation tool.
\\\hline\hline
\textbf{TIP \#454}:&\textbf{Automatically Resize Frames After Last Child Removed}\\
Version:&\tipversion$Revision: 1.19 $\\
Authors:&Harald Oehlmann \tipmail{Harald.Oehlmann}{elmicron.de}
\par Harald Oehlmann \tipmail{oehhar}{users.sourceforge.net}
\par Francois Vogel \tipmail{fvogelnew1}{free.fr}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.6.6\\
Vote:&Pending\\
Created:&21 September 2016\\
Posting History:&
\\
Keywords:&Tk\\
&\\Abstract:&
A \textbf{frame}-like widget has 1x1 required size if created. If children are added by pack/grid and the last children is unpacked/grid, the frame-like widget does not return to the 1x1 required size. Instead, it keeps the size of the last packed item. It should automatically or under control resize to the initial requested size of 1x1.
\\\hline\hline
\textbf{TIP \#455}:&\textbf{Extensions to [vwait]: Variable Sets and Scripted Access to Tcl\_DoOneEvent}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Christian Werner \tipmail{chw}{ch-werner.de}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&07 October 2016\\
Posting History:&
\\
Keywords:&Tcl, event loop\\
&\\Abstract:&
This TIP generalizes the \textbf{vwait} command to allow waiting on zero, one, or more variable changes, on zero or more file events, to time-limit the wait, and to control on which kinds of events is to be waited by partially exposing the underlying API, namely \textit{Tcl\_DoOneEvent()}.
\\\hline\hline
\textbf{TIP \#456}:&\textbf{Extend the C API to Support Passing Options to TCP Server Creation}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&LemonBoy \tipmail{that.lemon}{gmail.com}
\par lime boy \tipmail{thatlemon}{gmail.com}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Done\\
Created:&18 November 2016\\
Posting History:&
\\
Keywords:&Tcl, socket, SO\_REUSEPORT, SO\_REUSEADDR\\
&\\Abstract:&
The \textbf{Tcl\_OpenTcpServer} interface doesn't provide enough flexibility as experienced during the implementation of the scaffolding necessary to support the \textbf{SO\_REUSEPORT} flag for sockets. This TIP adds that capability through a new API function, \textbf{Tcl\_OpenTcpServerEx}, that takes extra options.
\\\hline\hline
\textbf{TIP \#457}:&\textbf{Add Support for Named Arguments}\\
Version:&\tipversion$Revision: 1.22 $\\
Authors:&Mathieu Lafon \tipmail{mlafon}{gmail.com}
\par Andreas Leitgeb \tipmail{avl}{logic.at}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&21 November 2016\\
Posting History:&
\\
Keywords:&Tcl, procedure, argument handling\\
&\\Abstract:&
This TIP proposes an enhancement of the Tcl language to support named arguments and additional features when calling a procedure.
\\\hline\hline
\textbf{TIP \#458}:&\textbf{Add Support for epoll() and kqueue() in the Notifier}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Lucio Andr\'{e}s Illanes Albornoz \tipmail{l.illanes}{gmx.de}
\par Lucio Andr\'{e}s Illanes Albornoz \tipmail{lucio}{lucioillanes.de}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Done\\
Created:&24 November 2016\\
Posting History:&
\\
Keywords:&event loop, scalability\\
&\\Abstract:&
This TIP proposes to replace \textit{select}(2) in the notifier implementation with \textit{epoll}(7) and \textit{kqueue}(2) on Linux and DragonFly-, Free-, Net-, and OpenBSD respectively. This is to remove a major bottleneck in the ability of Tcl to scale up to thousands and tens of thousands of sockets (aka \textbf{C10K}). Furthermore, this should also provide sufficient infrastructure in order to permit adding support for other platform-specific event mechanisms in the future, such as IOCPs on Solaris and Windows.
\\\hline\hline
\textbf{TIP \#459}:&\textbf{Tcl Package Introspection Improvements}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Jan Nijtmans \tipmail{jan.nijtmans}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&08 December 2016\\
Posting History:&
\\
Keywords:&Tcl, package\\
&\\Abstract:&
This TIP proposes to improve package introspection by providing a new command \textbf{package files}.
\\\hline\hline
\textbf{TIP \#460}:&\textbf{An Alternative to Upvar}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Don Hathway \tipmail{dunnie}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&9.0\\
Vote:&Pending\\
Created:&08 December 2016\\
Posting History:&
\\
Keywords:&Tcl, variable, link, upvar\\
&\\Abstract:&
Variable linking with the \textit{upvar} command is not as intuitive or effecient as it should be. This TIP proposes an alternative through automatic variable linking.
\\\hline\hline
\textbf{TIP \#461}:&\textbf{Separate Numeric and String Comparison Operators}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Kevin B Kenny \tipmail{kennyb}{acm.org}
\par Kevin B Kenny \tipmail{kevin.b.kenny}{gmail.com}
\par Kevin Kenny \tipmail{kennykb}{acm.org}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&24 January 2017\\
Posting History:&
\\
Keywords:&Tcl, expression\\
&\\Abstract:&
This TIP proposes to complete the separation between string and numeric comparison operations in [expr] and related commands ([for], [if], [while], etc.). It introduces new comparison operators \textbf{ge}, \textbf{gt}, \textbf{le}, and \textbf{lt}, (along with the corresponding commands in the \textbf{::tcl::mathop} namespace), and encourages programmers to restrict the six operators \textbf{==}, \textbf{\tiprangle{}=}, \textbf{\tiprangle{}}, \textbf{\tiplangle{}=}, \textbf{\tiplangle{}} and \textbf{!=} to comparisons of numeric values.
\\\hline\hline
\textbf{TIP \#462}:&\textbf{Add New [info ps] Ensemble for Subprocess Management}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Fr\'{e}d\'{e}ric Bonnet \tipmail{fredericbonnet}{free.fr}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&23 January 2017\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to improve Tcl's handling of subprocesses created by the \textbf{exec} and \textbf{open} commands by adding a new \textbf{::tcl::process} ensemble.
\\\hline\hline
\textbf{TIP \#463}:&\textbf{Command-Driven Substitutions for regsub}\\
Version:&\tipversion$Revision: 1.6 $\\
Author:&Donal Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Done\\
Created:&11 February 2017\\
Posting History:&
\\
Keywords:&Tcl, regular expression\\
&\\Abstract:&
The \textbf{regsub} command can only do substitutions of a limited complexity. This TIP adds an option to generate substitution text using another Tcl command, allowing a more complex range of substitutions to be performed easily and safely.
\\\hline\hline
\textbf{TIP \#464}:&\textbf{Support for Multimedia Keys on Windows}\\
Version:&\tipversion$Revision: 1.6 $\\
Authors:&Ralf Fassel \tipmail{ralfixx}{gmx.de}
\par Andreas Leitgeb \tipmail{avl}{logic.at}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.5\\
Vote:&Done\\
Created:&28 January 2017\\
Posting History:&
\\
Keywords:&Tk, keyboard, keycode\\
&\\Abstract:&
This TIP proposes adding support for the multimedia keys present on many modern keyboards.
\\\hline\hline
\textbf{TIP \#465}:&\textbf{Change Rule 8 of the Dodekalogue to Cut Some Corner Cases}\\
Version:&\tipversion$Revision: 1.2 $\\
Author:&Andreas Leitgeb \tipmail{avl}{logic.at}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&03 March 2017\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to make \textbf{\$}-substitution more conforming to naive expectations and just rule out certain odd-ball uses that can safely be assumed to not appear in serious use, but only in crafted examples ``serving'' for confusion, or as accidentally legal interpretation of mistyped Tcl code.
\\\hline\hline
\textbf{TIP \#466}:&\textbf{Revised Implementation of the Text Widget}\\
Version:&\tipversion$Revision: 1.11 $\\
Authors:&François Vogel \tipmail{fvogelnew1}{free.fr}
\par Gregor Cramer \tipmail{remarcg}{gmx.net}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&10 March 2017\\
Posting History:&
\\
Keywords:&Tk, text widget\\
&\\Abstract:&
This TIP proposes the replacement of the current implementation of the text widget (the ``legacy'' text widget) by a revised implementation offering a large number of advantages.
\\\hline\hline
\textbf{TIP \#467}:&\textbf{Move TIP Collection to Fossil}\\
Version:&\tipversion$Revision: 1.5 $\\
Author:&Mark Janssen \tipmail{mpc.janssen}{gmail.com}
\\
State:&Draft\\Type:&Process\\
Vote:&Pending\\
Created:&14 March 2017\\
Posting History:&
\\
Keywords:&migration\\
&\\Abstract:&
The Tcl TIP collection shall be moved to Fossil and the process of managing TIPs shall use Fossil as much as possible. The TIP format will be changed from a TIP-specific form to Markdown.
\\\hline\hline
\textbf{TIP \#468}:&\textbf{Support Passing TCP listen Backlog Size Option to TCP Socket Creation}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Shannon Noe \tipmail{shannon.noe}{flightaware.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&03 April 2017\\
Posting History:&
\\
Keywords:&Tcl, socket, SOMAXCONN\\
&\\Abstract:&
This TIP adds the ability to control the TCP backlog depth used by the \textit{listen} system call within the \textbf{socket} Command. The API function, \textbf{Tcl\_OpenTcpServerEx}, will be extended to allow the passing of the backlog value. Currently, the SOMAXCONN macro is used as the default. Backlog values are hard coded to a minimum of 100. The backlog values of 1 and 0 are useful on the Linux platform.
\\\hline\hline
\textbf{TIP \#469}:&\textbf{A Callback for Channel-Exception Conditions}\\
Version:&\tipversion$Revision: 1.3 $\\
Author:&Andreas Leitgeb \tipmail{avl}{logic.at}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&16 April 2017\\
Posting History:&
\\
Keywords:&Tcl, event handling\\
&\\Abstract:&
This TIP proposes to extend the \textbf{fileevent} Tcl command to also accept the keyword \textbf{exception} for its second argument. This will allow to register a callback for the specific event that the OS reports an exception on the channel, while ignoring read- or writability.
\\\hline\hline
\textbf{TIP \#470}:&\textbf{Reliable Access to OO Definition Context Object}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Done\\
Created:&23 April 2017\\
Posting History:&
\\
Keywords:&TclOO, metaprogramming\\
&\\Abstract:&
This TIP makes it easier for people to write procedures to extend TclOO's definition sublanguage.
\\\hline\hline
\textbf{TIP \#471}:&\textbf{Add [info linkedname] Introspection Command}\\
Version:&\tipversion$Revision: 1.1 $\\
Author:&Mathieu Lafon \tipmail{mlafon}{gmail.com}
\\
State:&Draft\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Pending\\
Created:&05 May 2017\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to improve link variable introspection by providing a new \textbf{info linkedname} command.
\\\hline\hline
\textbf{TIP \#472}:&\textbf{Add Support for 0d Radix Prefix to Integer Literals}\\
Version:&\tipversion$Revision: 1.8 $\\
Authors:&Venkat Iyer \tipmail{venksi}{gmail.com}
\par Brian Griffin \tipmail{brian_griffin}{mentor.com}
\\
State:&Accepted\\Type:&Project\\
Tcl Version:&8.7\\
Vote:&Done\\
Created:&25 May 2017\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes adding support for a \textbf{0d} decimal radix prefix to complement the existing \textbf{0x} hexidecimal, \textbf{0o} octal and \textbf{0b} binary radix prefixes.
\\\hline\hline
\textbf{TIP \#473}:&\textbf{Allow a Defined Target Namespace in oo::copy}\\
Version:&\tipversion$Revision: 1.4 $\\
Author:&Donal Fellows \tipmail{dkf}{users.sf.net}
\\
State:&Final\\Type:&Project\\
Tcl Version:&8.6.7\\
Vote:&Done\\
Created:&06 June 2017\\
Posting History:&
\\
Keywords:&Tcl, missing functionality, bugfix\\
&\\Abstract:&
This TIP adds functionality to \textbf{oo::copy} to allow the created copy to have a defined namespace, much as \textbf{oo::class}'s \textbf{createWithNamespace} method allows such a namespace to be given on normal object creation.
\\\hline\hline
\textbf{TIP \#10000}:&\textbf{Dummy Proposal for Testing Editing Interfaces}\\
Version:&\tipversion$Revision: 1.216 $\\
Authors:&Don Porter \tipmail{dgp}{users.sourceforge.net}
\par Andreas Kupries \tipmail{a.kupries}{westend.com}
\par Richard Suchenwirth \tipmail{richard.suchenwirth}{kst.siemens.de}
\par Kevin B KENNY \tipmail{kennykb}{acm.org}
\par Jeff Hobbs \tipmail{hobbs}{users.sourceforge.net}
\par Vince Darley \tipmail{vincentdarley}{users.sourceforge.net}
\par Fabrice Pardo \tipmail{Fabrice.Pardo}{l2m.cnrs.fr}
\par Joe Mistachkin \tipmail{joe}{mistachkin.com}
\par Donal K. Fellows \tipmail{donal.k.fellows}{manchester.ac.uk}
\par Mark Janssen \tipmail{mpc.janssen}{gmail.com}
\par Reinhard Max \tipmail{max}{tclers.tk}
\par Andreas Leitgeb \tipmail{avl}{logic.at}
\par Andreas Kupries \tipmail{akupries}{shaw.ca}
\par Francois Vogel \tipmail{fvogelnew1}{free.fr}
\par KEVIN KENNY \tipmail{kevin.b.kenny}{gmail.com}
\\
State:&Draft\\Type:&Informative\\
Vote:&Pending\\
Created:&03 December 2000\\
Posting History:&
\\
&\\Abstract:&
This TIP proposes to complete the separation between string and numeric comparison operations in [expr] and related commands ([for], [if], [while], etc.). It introduces new comparison operators \textbf{ge}, \textbf{gt}, \textbf{le}, and \textbf{lt}, (along with the corresponding commands in the \textbf{::tcl::mathop} namespace), and to restrict the six operators \textbf{==}, \textbf{\tiprangle{}=}, \textbf{\tiprangle{}}, \textbf{\tiplangle{}=}, \textbf{\tiplangle{}} and \textbf{!=} to comparisons of numeric values.
\\\hline\end{supertabular}\end{center}

\begin{figure}[htbp]\begin{center}\leavevmode
\tipimage{3example}{43pt}
\caption{This is a test caption}
\end{center}\end{figure}

This is an example long TIP reference \url{https://tip.tcl-lang.org3.tex} that should be expanded in a renderer-specific way...

This is an example non-reference --- \textit{index[3]} --- that should not be rendered as a link (to this document or anywhere else) at all. Note that the dashes in the previous sentence (with whitespace on each side) are candidates for rendering as long dashes (em-dashes) on output-media which support this.
\begin{description}
\item[Supported URLs]
should be http, https, mailto, news, newsrc, ftp and gopher. Test here...

HTTP URL --- \url{http://purl.org/thecliff/tcl/wiki/}

HTTP URL in brackets --- [\url{http://wiki.tcl.tk}]

HTTPS URL --- \url{https://sourceforge.net/}

FTP URL --- \url{ftp://src.doc.ic.ac.uk/packages/tcl/tcl/}

NEWS URL --- \url{news:comp.lang.tcl}

MAILTO URL --- \url{mailto:fellowsd@cs.man.ac.uk?subject=TIP3}

Others (might not be valid links!) --- \url{gopher://info.mcc.ac.uk}, \url{newsrc:2845823825}
\end{description}

\vspace{3ex}\hrule\vspace{1.5ex}

\textit{Examples of sections and subsections}
\begingroup\small\begin{verbatim}
~Section Heading

Section text

~~Subsection Heading

Subsection text

~~~Subsubsection Heading

Subsubsection text
\end{verbatim}
\endgroup

which renders as...

\section{Section Heading}

Section text

\subsection{Subsection Heading}

Subsection text

\subsubsection{Subsubsection Heading}

Subsubsection text

\vspace{3ex}\hrule\vspace{1.5ex}

\section{Copyright}

This document has been placed in the public domain.

\section{Colophon}

\textit{TIP AutoGenerator --- written by Donal K. Fellows}
\begin{thebibliography}{TIP \#35}
\addcontentsline{toc}{section}{References}
\bibitem[TIP \#1]{tip1}
TIP Editor,
\emph{TIP Index},
on-line at \url{http://purl.org/tcl/tip/1.html}
\bibitem[TIP \#2]{tip2}
Andreas Kupries,
Donal K. Fellows,
Don Porter,
Mo DeJong,
Larry W. Virden,
Kevin Kenny,
\emph{TIP Guidelines},
on-line at \url{http://purl.org/tcl/tip/2.html}
\bibitem[TIP \#16]{tip16}
Don Porter,
Daniel Steffen,
\emph{Tcl Functional Areas for Maintainer Assignments},
on-line at \url{http://purl.org/tcl/tip/16.html}
\bibitem[TIP \#22]{tip22}
David Cuthbert,
Kevin Kenny,
Don Porter,
Donal K. Fellows,
\emph{Multiple Index Arguments to lindex},
on-line at \url{http://purl.org/tcl/tip/22.html}
\bibitem[TIP \#23]{tip23}
Kevin Kenny,
Jim Ingham,
Don Porter,
Daniel A. Steffen,
Donal K. Fellows,
\emph{Tk Toolkit Functional Areas for Maintainer Assignments},
on-line at \url{http://purl.org/tcl/tip/23.html}
\bibitem[TIP \#27]{tip27}
Kevin Kenny,
\emph{CONST Qualification on Pointers in Tcl API's},
on-line at \url{http://purl.org/tcl/tip/27.html}
\bibitem[TIP \#32]{tip32}
David Cuthbert,
Kevin Kenny,
\emph{Add Tcl\_Obj-enabled counterpart to Tcl\_CreateTrace},
on-line at \url{http://purl.org/tcl/tip/32.html}
\bibitem[TIP \#59]{tip59}
Andreas Kupries,
\emph{Embed Build Information in Tcl Binary Library},
on-line at \url{http://purl.org/tcl/tip/59.html}
\bibitem[TIP \#64]{tip64}
Chris Nelson,
Kevin Kenny,
\emph{Improvements to Windows Font Handling},
on-line at \url{http://purl.org/tcl/tip/64.html}
\bibitem[TIP \#72]{tip72}
Donal K. Fellows,
\emph{64-Bit Value Support for Tcl on 32-Bit Platforms},
on-line at \url{http://purl.org/tcl/tip/72.html}
\bibitem[TIP \#86]{tip86}
Peter MacDonald,
Peter MacDonald,
\emph{Improved Debugger Support},
on-line at \url{http://purl.org/tcl/tip/86.html}
\bibitem[TIP \#89]{tip89}
Tom Wilkason,
Frank Pilhofer,
\emph{Try/Catch Exception Handling in the Core},
on-line at \url{http://purl.org/tcl/tip/89.html}
\bibitem[TIP \#90]{tip90}
Don Porter,
Donal K. Fellows,
\emph{Enable [return -code] in Control Structure Procs},
on-line at \url{http://purl.org/tcl/tip/90.html}
\bibitem[TIP \#104]{tip104}
Ludwig Callewaert,
Larry W. Virden.,
\emph{Generalization of the Tk Undo Subsystem},
on-line at \url{http://purl.org/tcl/tip/104.html}
\bibitem[TIP \#112]{tip112}
Donal K. Fellows,
\emph{Ensembles are Namespaces are Commands},
on-line at \url{http://purl.org/tcl/tip/112.html}
\bibitem[TIP \#123]{tip123}
Arjen Markus,
Donal K. Fellows,
\emph{Adding an Exponentiation Operator to the [expr] Command},
on-line at \url{http://purl.org/tcl/tip/123.html}
\bibitem[TIP \#130]{tip130}
Pat Thoyts,
\emph{Unique DDE server names.},
on-line at \url{http://purl.org/tcl/tip/130.html}
\bibitem[TIP \#137]{tip137}
Anton Kovalenko,
\emph{Specifying Script Encodings for [source] and tclsh},
on-line at \url{http://purl.org/tcl/tip/137.html}
\bibitem[TIP \#187]{tip187}
Salvatore Sanfilippo,
Miguel Sofer,
Paul Nash,
\emph{Procedures as Values},
on-line at \url{http://purl.org/tcl/tip/187.html}
\bibitem[TIP \#189]{tip189}
Andreas Kupries,
Jean-Claude Wippler,
Jeff Hobbs,
Don Porter,
Larry W. Virden,
Daniel A. Steffen,
Don Porter,
\emph{Tcl Modules},
on-line at \url{http://purl.org/tcl/tip/189.html}
\bibitem[TIP \#208]{tip208}
Jeff Hobbs,
\emph{Add a 'chan' Command},
on-line at \url{http://purl.org/tcl/tip/208.html}
\bibitem[TIP \#210]{tip210}
Bob Techentin,
Donal K. Fellows,
\emph{Add 'tempfile' Subcommand to 'file'},
on-line at \url{http://purl.org/tcl/tip/210.html}
\bibitem[TIP \#211]{tip211}
Robert Seeger,
Robert Seeger,
Don Porter,
\emph{Add Full Stack Trace Capability},
on-line at \url{http://purl.org/tcl/tip/211.html}
\bibitem[TIP \#219]{tip219}
Andreas Kupries,
Andreas Kupries,
\emph{Tcl Channel Reflection API},
on-line at \url{http://purl.org/tcl/tip/219.html}
\bibitem[TIP \#228]{tip228}
Andreas Kupries,
Andreas Kupries,
Vince Darley,
\emph{Tcl Filesystem Reflection API},
on-line at \url{http://purl.org/tcl/tip/228.html}
\bibitem[TIP \#230]{tip230}
Andreas Kupries,
Andreas Kupries,
Andreas Kupries,
\emph{Tcl Channel Transformation Reflection API},
on-line at \url{http://purl.org/tcl/tip/230.html}
\bibitem[TIP \#237]{tip237}
Kevin B. Kenny,
Don Porter,
\emph{Arbitrary-Precision Integers for Tcl},
on-line at \url{http://purl.org/tcl/tip/237.html}
\bibitem[TIP \#247]{tip247}
John K. Ousterhout,
Donal K. Fellows,
\emph{Tcl/Tk Engineering Manual},
on-line at \url{http://purl.org/tcl/tip/247.html}
\bibitem[TIP \#280]{tip280}
Andreas Kupries,
Andreas Kupries,
\emph{Add Full Stack Trace Capability With Location Introspection},
on-line at \url{http://purl.org/tcl/tip/280.html}
\bibitem[TIP \#308]{tip308}
Kevin B. Kenny,
Artur Trzewik,
Andreas Leitgeb,
Donal K. Fellows,
\emph{Tcl Database Connectivity (TDBC)},
on-line at \url{http://purl.org/tcl/tip/308.html}
\bibitem[TIP \#318]{tip318}
Bill Poser,
\emph{Extend Default Whitespace in 'string trim' Beyond ASCII},
on-line at \url{http://purl.org/tcl/tip/318.html}
\bibitem[TIP \#323]{tip323}
Colin McCormack,
Don Porter,
Kevin B. Kenny,
\emph{Do Nothing Gracefully},
on-line at \url{http://purl.org/tcl/tip/323.html}
\bibitem[TIP \#349]{tip349}
Zbigniew Baniewski,
\emph{New "-cargo" option for every Tk widget},
on-line at \url{http://purl.org/tcl/tip/349.html}
\bibitem[TIP \#357]{tip357}
Kevin Kenny,
\emph{Export TclLoadFile},
on-line at \url{http://purl.org/tcl/tip/357.html}
\bibitem[TIP \#418]{tip418}
Jeff Rogers,
\emph{Add [binary] Subcommands for In-Place Modification},
on-line at \url{http://purl.org/tcl/tip/418.html}
\end{thebibliography}
\end{document}
