改めて感じるTcl/Tkの素晴らしさ

Tcl/Tkというと、何とも古臭いもののように感じる方も少なくないことでしょう。あるいは、「何それ?」ということで、聞いたこともない方もいるかもしれません。

Tcl/Tkというのは、スクリプト言語であるTcl (= Tool Command Language) と、そのライブラリである Tk (= Tool Kit) をあわせた呼び方です。TkはGUIツールキットとして非常によくできており、Tcl以外からも使えるようにさまざまな言語にバインディングされています。たとえば、Perl/Tk、Ruby/Tk、PHP/Tk、Tkinter (Pythonへのバインディング)などがあります。

かなり古くからあるものですので、古臭く感じるのはある意味仕方がありません。とはいえ、Tclが生まれたのは1988年、Tkが生まれたのは1990年代に入ってからです。CのANSI規格が制定されたのが1989年、Javaが登場したのが1990年代前半ですから、とんでもなく古いわけではありません。

私のTcl/Tkとの付き合いも結構古いのですが、主に使いだしたのは今世紀に入ってからです。お手軽なマルチプラットフォームのGUIツールキットとしてはもってこいですし、CやC++からライブラリとして利用できることも魅力的です。

仕事柄、マルチプラットフォームのGUIツールキットをいろいろ検討することが多いのですが、使い勝手、対応するプラットフォーム、ライセンスなどを考慮すると、いつもTcl/Tkに軍配が上がります。

デメリットとしては、Tcl/Tkの実行環境は結構な量のファイルをインストールしないといけませんので、それが玉に瑕ですが、Tclkitなどで固める方法もありますし、それほど大きな問題ではありません。

もう少しC++から使いやすいように開発環境を整備したいと前々から考えています。なかなか時間がとれないのが実情ですが、近いうちに何とかしたいと考えています。