tcl-tclex - Lexical analyzer generator for Tcl

Distribution: Ubuntu 16.04 LTS (Xenial Xerus)
Repository: Ubuntu Universe i386
Package name: tcl-tclex
Package version: 1.2a1
Package release: 16
Package architecture: i386
Package type: deb
Installed size: 194 B
Download size: 50.11 KB
Official Mirror:
tcLex is a lexer (lexical analyzer) generator extension to Tcl. It is inspired by Unix and GNU lex and flex, which are "tools for generating programs that perform pattern-matching on text". tcLex is very similar to these programs, except it uses Tcl philosophy and syntax, whereas the others use their own syntax and are used in conjunction with the C language. People used to lex or flex should then feel familiar with tcLex. tcLex is a small extension (the Windows compiled version is about 20kb, and the source is about 150kb), because it extensively uses the Tcl library. However, the current doesn't use Tcl's regexp code anymore but a patched version is now included in tcLex, which makes it slightly bigger (by a few KB). tcLex should work with Tcl 8.0 and later. tcLex will NEVER work with earlier versions, because it uses Tcl 8.0's "object" system for performance. The most interesting features are: * cross-platform support, thanks to Tcl. Though it has been developed on Windows and tested on Windows and Unix only, it should work on other platforms as long as Tcl exists on these platforms. Supported Tcl platforms are Windows 95/NT, Unix (Linux, Solaris...) and Macintosh. Other platforms are VMS, OS/2, NeXTStep, Amiga... * unlike lex and flex, which only generate static lexers written in C and intended to be compiled, tcLex dynamically generates Tcl commands that can be used like other C commands or Tcl procedures from within Tcl scripts or C programs. * it uses Tcl regular expressions. That means you don't have to learn another regexp language. * it works with Tcl namespaces * the generated lexer commands can be used in one pass or incrementally, because they maintain state information. That way, several instances of the same lexer (eg a HTML parser) can run at the same time in distinct call frames and maintain distinct states (local variables...). Lexer need not be specially designed in order to be used incrementally, the same lexer can transparently be used in one pass or incrementally. This feature is especially useful when processing text from a file or an Internet socket (Web pages for example), when data is not necessarily available at the beginning of the processing.



  • tclex


  • tclex


  • tclex


    Source package: tclex

    Install Howto

    1. Update the package index:
      # sudo apt-get update
    2. Install tcl-tclex deb package:
      # sudo apt-get install tcl-tclex


    • /usr/lib/tcltk/tcLex1.2/pkgIndex.tcl
    • /usr/lib/tcltk/tcLex1.2/
    • /usr/share/doc-base/tclex-manual
    • /usr/share/doc/tcl-tclex/changelog.Debian.gz
    • /usr/share/doc/tcl-tclex/copyright
    • /usr/share/doc/tcl-tclex/examples/C/README.txt
    • /usr/share/doc/tcl-tclex/examples/C/parseC.tcl.gz
    • /usr/share/doc/tcl-tclex/examples/C/test.c.gz
    • /usr/share/doc/tcl-tclex/examples/C/test.tcl
    • /usr/share/doc/tcl-tclex/examples/XML/README.txt
    • /usr/share/doc/tcl-tclex/examples/XML/XML.tcl.gz
    • /usr/share/doc/tcl-tclex/examples/pascal/README.txt
    • /usr/share/doc/tcl-tclex/examples/pascal/pascal.l
    • /usr/share/doc/tcl-tclex/examples/pascal/pascal.tcl
    • /usr/share/doc/tcl-tclex/examples/pascal/test.p
    • /usr/share/doc/tcl-tclex/examples/strip/README.txt
    • /usr/share/doc/tcl-tclex/examples/strip/strip.l
    • /usr/share/doc/tcl-tclex/examples/strip/strip.tcl
    • /usr/share/doc/tcl-tclex/html/about.html
    • /usr/share/doc/tcl-tclex/html/about_toc.html
    • /usr/share/doc/tcl-tclex/html/blank.html
    • /usr/share/doc/tcl-tclex/html/complement.html
    • /usr/share/doc/tcl-tclex/html/complement_toc.html
    • /usr/share/doc/tcl-tclex/html/design.html
    • /usr/share/doc/tcl-tclex/html/design_toc.html
    • /usr/share/doc/tcl-tclex/html/examples.html
    • /usr/share/doc/tcl-tclex/html/examples_toc.html
    • /usr/share/doc/tcl-tclex/html/index.html
    • /usr/share/doc/tcl-tclex/html/menu.html
    • /usr/share/doc/tcl-tclex/html/using.html
    • /usr/share/doc/tcl-tclex/html/using_toc.html


    2013-09-08 - Sergei Golovan <> tclex (1.2a1-16) unstable; urgency=low * Renamed the binary package to tcl-tclex to match the Debian Tcl/Tk policy. * Ported to Tcl 8.5 and 8.6. * Switched to 3.0 (quilt) source package format. * Bumped debhelper compatibility version to 8. * Bumped standards version to 3.9.4. * Put examples into the binary package. * Added ${misc:Depends} substitution variable to debian/control * Fixed copyright issues in debian/copyright.

    2008-07-18 - Sergei Golovan <> tclex (1.2a1-15) unstable; urgency=low * Don't allow to load tcLex package into Tcl 8.5 and newer because of changes in Tcl internal structures which break binary compatibility. After Tcl 8.5 will become a default Tcl version tcLex will be rebuilt with 8.5 and will loose compatibility with 8.4 (closes: #487549). * Bumped standards version to 3.8.0.

    2008-06-09 - Sergei Golovan <> tclex (1.2a1-14) unstable; urgency=low * Fixed clean target to work with debhelper 7.0 (made dh_clean the last command, so debhelper logs are removed now). * Protected quilt invocation in debian/rules to make it possible to convert bwidget source package to 3.0 (quilt) format (closes: #484914).

    2008-05-18 - Sergei Golovan <> tclex (1.2a1-13) unstable; urgency=low * Removed README.Debian because the information in it is no longer relevant. * Bumped standards version to 3.7.3. * Added a copyright notice. * Changed section in doc-base to Programming.

    2007-11-30 - Sergei Golovan <> tclex (1.2a1-12) unstable; urgency=low * New maintainer Debian Tcl/Tk Packagers <> (closes: #406135). * Adopted the package to the current Debian Tcl/Tk policy. This also fixed FTBFS (closes: #450474). * Fixed lintian complain on ignoring make distclean errors. * Switched to quilt for patch management. * Bumped debhelper compatibility level to 5.

    2007-04-20 - Matej Vela <> tclex (1.2a1-11) unstable; urgency=low * QA upload. * Port to Tcl 8.4. Closes: #420183. - src/tcLex.c: Use Command->flags instead of Command->deleted. - src/tcLex.c: Conform more closely to the Tcl_GetIndexFromObj(3tcl) prototype. * Remove unnecessary dependency on Tk. * debian/rules: Install changes.txt as the upstream changelog. * debian/changelog: Add colon after `closes' to placate Lintian. * debian/copyright: Update upstream URL. * debian/watch: Add.

    2007-01-23 - Michael Ablassmeier <> tclex (1.2a1-10) unstable; urgency=low * QA upload. (ACK NMU; Closes: #359579) * Set maintainer to QA Group; Orphaned: #406135 * Bump compat level, depend on at least dh 4.0 * Conforms with latest Standards Version 3.7.2

    2006-07-17 - Amaya Rodrigo Sastre <> tclex (1.2a1-9.1) unstable; urgency=low * Non-maintainer upload. * Get rid of the /usr/doc link in postinst (Closes: #359579).

    2003-09-28 - David A. van Leeuwen <> tclex (1.2a1-9) unstable; urgency=low * Changed dependencies to tcl/tk8.3 rather than 8.2. Closes: #183802

    2002-03-15 - David A. van Leeuwen <> tclex (1.2a1-8) unstable testing; urgency=high * I _really_ need to get the change of 1.2a1-6 into testing or frozen or whatever makes it go into woody. Otherwise it leaves a broken package transcriber! Sorry for the messy uploads... Do I have to file an RC bug against myself?