tcl チュートリアル
tclを使い始める
サーチ…
備考
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日 |
インストール
Windowsに Tcl 8.6.4をインストールする :
WindowsマシンでTclを入手する最も簡単な方法は、ActiveStateからActiveTclディストリビューションをインストールすることです 。
www.activestate.comに移動し、リンクに従ってActiveTcl for WindowsのFree Community Editionをダウンロードします(適切な32/64ビットバージョンを選択してください)。
インストーラを実行すると、通常はC:\ TclディレクトリにActiveTclを新しくインストールします。
インストールをテストするためのコマンドプロンプトを開き、 "tclsh"を入力して、対話型のtclコンソールを開きます。インストールされているtclのバージョンを確認するには "info patchlevel"と入力し、ダウンロードされたActiveTclのエディションに応じて "8.6.x"という形式の出力を表示する必要があります。
- また、環境変数PATHに "C:\ Tcl \ bin"またはそれに相当するものを追加することもできます。
C:\>tclsh
% info patchlevel
8.6.4
Tcl(とTk)のHelloプログラムは、
次のコードは、Tclシェル( tclsh )またはスクリプトファイルに入力し、Tclシェルを実行することができます。
puts "Hello, world!"
Hello, world!文字列引数を与えるHello, world!コマンドのputs 。 putsコマンドは引数を標準出力(対話モードで端末)に書き出し、その後に改行を追加します。
Tk対応のシェルでは、このバリエーションを使用できます:
pack [button .b -text "Hello, world!" -command exit]
Hello, world!というテキストのグラフィックボタンを作成しますHello, world!アプリケーションウィンドウに追加します。押されると、アプリケーションは終了します。
Tk対応のシェルは、次のように起動されます: wishまたは次の文とともにtclshを使用します。
package require Tk
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の作成者)が書いた強力で高速な正規表現エンジン。
茶碗でパッケージをインストールする
今では、パッケージをローカルマシンにインストールするために、多くの言語がアーカイブサーバーをサポートしています。 TCLはTeacupと同じアーカイブサーバーを持っています
teacup version teacup search <packageName>
例
teacup install Expect