Looking for tcl Answers? Try Ask4KnowledgeBase
Looking for tcl Keywords? Try Ask4Keywords

tcltclを使い始める


備考

Tclは、完全なユニコードをサポートするクロスプラットフォーム言語です。

柔軟性:既存のコマンドを再定義または拡張したり、新しいコマンドを書き込んだりできます。

イベント駆動型プログラミング:イベント駆動型入出力および可変トレース。

ライブラリインタフェース:既存のCライブラリをTclに統合し、CライブラリにTclインタフェースを提供するのは非常に簡単です。これらのインタフェース「スタブ」はTclの特定のバージョンには結びついておらず、Tclをアップグレードした後も引き続き動作します。

Tclインタフェース:Tclは完全なAPIを提供するので、C / Python / Ruby / Java / Rプログラム内のTclインタープリタを使用します。

バージョン

バージョンノート発売日
8.6.6 現在のパッチリリース。 2016-07-27
8.6.5 2016-02-29
8.6.4 2015-03-12
8.6.3 2014-11-12
8.6.2 2014-08-27
8.6.1 2013-09-20
8.6.0 現在推奨されている新しいコードのバージョンシリーズ。オブジェクトシステムと非再帰実行エンジンを導入。 2013-09-20
8.5.19 現在のLTSリリース 2016-02-12
8.5.18 2015-03-06
8.5.17 2014-10-25
8.5.16 2014-08-25
8.5.15 2013-09-18
8.5.14 2013-04-03
8.5.13 2012-11-12
8.5.12 2012-07-27
8.5.11 2011年11月4日
8.5.10 2011-06-24
8.5.9 2010-09-08
8.5.8 2009-11-16
8.5.7 2009-04-15
8.5.6 2008年12月23日
8.5.5 2008年10月15日
8.5.4 2008-08-15
8.5.3 2008年6月30日
8.5.2 2008年3月28日
8.5.1 2008-02-05
8.5.0 現在サポートされている最も古いバージョン。拡張構文、辞書、アンサンブルコマンドを導入しました。 2007年12月20日
8.4.20 最終的な8.4シリーズリリース。 それ以上のリリースはありません。 2013-06-01
8.4.19 2008年04月18日
8.4.18 2008-02-08
8.4.17 2008年1月4日
8.4.16 2007-09-21
8.4.15 2007-05-25
8.4.14 2006-10-19
8.4.13 2006-04-19
8.4.12 2005-12-03
8.4.11 2005年06月28日
8.4.10 2005年06月04日
8.4.9 2004年12月7日
8.4.8 2004年11月22日
8.4.7 2004-07-25
8.4.6 2004-03-01
8.4.5 2003-11-24
8.4.4 2003-07-22
8.4.3 2003-05-19
8.4.2 2003-03-03
8.4.1 2002年10月22日
8.4.0 Tcl Core Teamによる最初のリリース。多くのパフォーマンスの向上。改良された64ビットサポート。 2002年9月18日
8.3.5 2002年10月18日
8.3.4 2001年10月19日
8.3.3 2001-04-06
8.3.2 2000-08-09
8.3.1 2000-04-26
8.3.0 パフォーマンスの向上。 2000-02-10
8.2 安定化リリース 1999-08-18
8.1 Unicodeのサポートを導入しました。 1999-04-30
8.0 バイトコードコンパイルエンジンの導入 1997年8月16日

Tclの特長

  • クロスプラットフォーム移植性
    • Windows、Mac OS X、Linux、さらにはほぼすべてのUNIX上で動作します。
  • イベント駆動型プログラミング
    • 変数の読み取り/書き込み/設定解除に基づいてイベントをトリガーします。
    • コマンドが入力または放置されたときにイベントをトリガーします。
    • I / Oチャネル(ファイルまたはネットワーク)が読み書き可能になったときにイベントをトリガーします。
    • 独自のイベントを作成します。
    • タイマーに基づいてコマンドをトリガーします。
  • オブジェクト指向プログラミング
    • ミックスイン。
    • スーパークラスとサブクラス。
  • シンプルな文法
  • 完全なUnicodeサポート
    • それだけで動作します。ユニコード文字列を扱うための特別なコマンドは必要ありません。
    • さまざまなエンコーディングシステム間で簡単に変換できます。
  • フレキシブル
    • 新しい制御構造とコマンドを作成します。
    • 呼び出し側プロシージャのコンテキスト内の変数にアクセスします。
    • 呼び出し元のプロシージャのコンテキストでコードを実行します。
  • 強力なイントロスペクション機能。
    • 多くのTclデバッガがTclで書かれています。
  • ライブラリインターフェイス
    • 既存のCライブラリを統合し、Tclインタフェースをライブラリに提供します。
    • ライブラリ "スタブ"はTclの特定のバージョンには結びついておらず、Tclのアップグレード後も引き続き動作します。
  • 完全なAPI
    • あなたの好きな言語にTclインタプリタを埋め込む。
    • Python、Ruby、R、JavaなどにはTcl APIが含まれています。
  • 埋め込みbigintライブラリ。
    • 非常に大きな数値を処理する特別なアクションは必要ありません。
  • 安全な通訳
    • ユーザーコードを実行できるサンドボックスを作成します。
    • インタプリタの特定のコマンドを有効または無効にします。
  • 正規表現
    • Henry Spencer (regexの作成者)が書いた強力で高速な正規表現エンジン。

インストール

Windowsに Tcl 8.6.4インストールする

  1. WindowsマシンでTclを入手する最も簡単な方法は、ActiveStateからActiveTclディストリビューションをインストールすることです

  2. www.activestate.comに移動し、リンクに従ってActiveTcl for WindowsのFree Community Editionをダウンロードします(適切な32/64ビットバージョンを選択してください)。

  3. インストーラを実行すると、通常はC:\ TclディレクトリにActiveTclを新しくインストールします。

  4. インストールをテストするためのコマンドプロンプトを開き、 "tclsh"を入力して、対話型のtclコンソールを開きます。インストールされているtclのバージョンを確認するには "info patchlevel"と入力し、ダウンロードされたActiveTclのエディションに応じて "8.6.x"という形式の出力を表示する必要があります。

  • また、環境変数PATHに "C:\ Tcl \ bin"またはそれに相当するものを追加することもできます。
C:\>tclsh
% info patchlevel
8.6.4
 

茶碗でパッケージをインストールする

今では、パッケージをローカルマシンにインストールするために、多くの言語がアーカイブサーバーをサポートしています。 TCLはTeacupと同じアーカイブサーバーを持っています

teacup version
teacup search <packageName>

teacup install Expect

Tcl(とTk)のHelloプログラムは、

次のコードは、Tclシェル( tclsh )またはスクリプトファイルに入力し、Tclシェルを実行することができます。

puts "Hello, world!"
 

Hello, world! 文字列引数を与えるHello, world! コマンドのputsputs コマンドは引数を標準出力(対話モードで端末)に書き出し、その後に改行を追加します。


Tk対応のシェルでは、このバリエーションを使用できます:

pack [button .b -text "Hello, world!" -command exit]
 

Hello, world! というテキストのグラフィックボタンを作成しますHello, world! アプリケーションウィンドウに追加します。押されると、アプリケーションは終了します。

Tk対応のシェルは、次のように起動されます: wish または次の文とともにtclsh を使用します。

package require Tk