Jump to content

Tcl/Tk: Difference between revisions

From EDM2
No edit summary
Line 14: Line 14:
====Foreign libraries with Tcl bindings====
====Foreign libraries with Tcl bindings====
* [[LibcURL]] - Internet URL (WWW, FTP, etc) access - Open Source - Current.
* [[LibcURL]] - Internet URL (WWW, FTP, etc) access - Open Source - Current.
* [[Libxml2]] - [[XML]] parser - Open source - Current


====Tcl related programmer's utilities====
====Tcl related programmer's utilities====

Revision as of 10:25, 13 June 2016

Scripting language originally called Tool Command Language that unlike most other such languages is maintained and controlled by a single company that has a core version that is open source and sell more advanced versions as closed source commercial software. Originally intended as an "embedded language" that was designed to be linked into compiled programs and used as an internal scripting and extensions language but has over time grown into a toolkit more suitable to build standalone applications with. Note that the usage of the term "embedded language" was correct at the time but the use of the term has changed and these days it is used for languages used/designed for embedded applications.

The convention is to call it Tcl rather than TCL since its name is now considered to be Tcl and not an acronym for Tool Command Language. Development of the language and toolkit was extremely rapid in the 1990's but has slowed down considerably in the last 15 years.

Over time Tcl has grown somewhat REXX like in structure although the syntax is completely different, this has meant that the language has never been as popular on OS/2 as on some other system as there has been little incentive to use it over the built in REXX interpreter, the main advantage of the Tcl/Tk system on OS/2 or eComStation has been the Tk widget toolkit and portability on systems where REXX is not common.

Tk

Platform independent graphics library and engine, although perhaps better described as a widget toolkit. Although maintained by the same company as Tcl, Tk has been modified for use with sundry other languages including Perl, Python and REXX.

A list of OS/2 ports of Tcl

  • PM Tcl/Tk - Open source - Discontinued
  • REXX/Tk - Open source - Discontinued - A port of Tk adapted for use with the REXX scripting language.

Foreign libraries with Tcl bindings

  • LibcURL - Internet URL (WWW, FTP, etc) access - Open Source - Current.
  • Libxml2 - XML parser - Open source - Current

Tcl related programmer's utilities

  • Exuberant ctags - Creates index files out of Tcl source files - Open source - Current.
  • Tcl Blend - Allows writing Tcl extencions in Java - Open source - Discontinued

Applications with a Tcl programming interface

  • PostgreSQL - SQL relational database system - Open source - Current.

OS/2 text & programmers editors with Tcl/Tk support

  • Boxer - Contributed, requires a separate download.
  • Elvis - Tcl syntax support included by default - Open source - Current.
  • jEdit - Java based editor - Tcl and TK syntax highlighting built in - Current.
  • NEdit - XFree86 - Autoindent, autocomplete and syntax highlighting - Open source - Discontinued.

A list of DOS ports of Tcl

DOS text & programmers editors with Tcl/Tk support

  • Boxer - Contributed, requires a separate download.
  • Elvis - Tcl syntax support included by default - Open source - Current

A list of Tcl ports run under WinOS/2

Requires Win32s.

A list of Tcl & Tk implementations that run under Java

  • HECL - Not ment to be 100% compatible but close enough for porting - Open source - Discontinued
  • JACL aka Tcl/Java - Open source - Discontinued
  • jTcl - Open source - Current
  • SWANK - Tk reimplemented in SWING, allows porting Tk based software to Java - Open source - Discontinued

Publications

Related articles

Tutorials and other learning material

Links

USENET

The Tcl Wars

This was in its day a rather infamous flame war initiated by Richard Stallman of the Free Software Foundation who fired a somewhat incoherent rant on comp.lang.tcl and a few other related newsgroup, telling people they should not be using Tcl. It turned out this was much like the famous Linux/Minix "Microkernel war" instigated by Linus Torvalds, primarily a rather cheap way of getting publicity for ones own project by attacking what was perceived to be the most popular freeware product at the time.

In this case it was to publicise two upcoming scripting languages the FSF had been working on in the form of GUILE and another GNU project by now dead and forgotten. Unlike the "Microkernel War" where people overall had not enough knowledge about the subject to realise that it was essentially trolling on part of the flame war initiator, what happened in this case was most of the viewers had both knowledge and experience of multiple programming paradigms and were rather unimpressed with the initial argument (such as it was). This backfired somewhat in the face of the FSF as it generated a lot of positive noise about Tcl and negative ones about Guile, the FSF and Stallman.

There was a second "Tcl War" a couple of years later, when a post attributed to Richard Stallman was posted in the same newsgroup in a somewhat conciliatory tone.

Standards