Tcl介紹

創(chuàng)建背景

現(xiàn)已創(chuàng)建了的很多交互工具,其中大部分都是用于集成電路設(shè)計钦购,問題在于對于每一個工具都需要某種類型的語言彰触,這會耗費大量時間去創(chuàng)建一些命令語言。而開發(fā)人員的關(guān)注點其實是在于工具本身的使用塞绿,而不是它的命令語言沟涨,并且麻煩的是一個工具的命令語言僅僅適用于它自己,并不適用于其他工具异吻。

于是裹赴,期待創(chuàng)建一種?可復(fù)用?的命令語言。設(shè)想若能創(chuàng)建一種普遍適用的腳本語言诀浪,如C語言的庫函數(shù)包一樣棋返,那其或許能夠用于很多領(lǐng)域。

同時希望這種語言是可擴展的雷猪,即有很好的擴展性睛竣。這可以方便不同的使用者向語言庫提供的內(nèi)核中加入一些自己需要的功能。

Tk概念源于1987年蘋果關(guān)于Hypercard的發(fā)布求摇,其功能以及腳本化很多功能的交互射沟。苦于沒有蘋果那么大開發(fā)隊伍与境,開發(fā)力量验夯,難以創(chuàng)建新型的交互軟件。

唯一的希望就是做到?組件化:不去創(chuàng)建幾十萬行代碼的應(yīng)用程序摔刁,而是找到一種能夠?qū)⑺璧膽?yīng)用程序分解為很多?較小的挥转、可復(fù)用的組件的方法。而每一個組件小到可以由一個小組就可以完成,這些組件最終實現(xiàn)所需的應(yīng)用程序绑谣。

這種基于組件的方法准潭,需要一種既強勁又堅韌的粘合劑,把組件結(jié)合在一起域仇, 共享腳本語言 就有可能成為這樣的粘合劑刑然。于是開發(fā)了Tk。

Tk接受的組件可以是 (1)獨立的用戶界面控件暇务,(2)完整的應(yīng)用程序泼掠。兩種情況下的組件都可以獨立開發(fā),然后使用Tcl來集成各個組件垦细,完成它們之間的通信择镇。

Tcl

Tcl:Tool Command Language,是一種?解釋執(zhí)行?的腳本語言括改。支持 變量腻豌、過程和控制結(jié)構(gòu)。同時Tcl還擁有功能強大的固有核心命令集嘱能。是一種用于?控制?擴展?應(yīng)用程序的動態(tài)語言(腳本語言)吝梅。

Tcl是需要解釋器的,其解釋器是一個用?C/C++語言的過程庫?實現(xiàn)的惹骂。故苏携,某種程度上也可以將Tcl看成一個C 庫。

擴展

任一個應(yīng)用程序可以通過? 增加命令?來擴展Tcl內(nèi)核的功能对粪。Tcl庫有豐富的 用于擴展TCL 命令的C /C++過程和函數(shù)右冻。這樣就可很容易地在C /C++的應(yīng)用程序中? 嵌入Tcl。Tcl最有用的一個擴展就是Tk著拭,這是一個用于開發(fā)圖形用戶界面(Graphical User Interface)應(yīng)用程序的工具集纱扭。

?用戶可以根據(jù)需要,針對某一特定領(lǐng)域?qū)cl語言的核心命令集進行擴展儡遮,加入適合自己應(yīng)用領(lǐng)域的擴展命令乳蛾。Tcl解釋器會將其當成像固有命令和固有結(jié)構(gòu)一樣同等看待。

Tcl良好的擴展性是的它能很好地適應(yīng)產(chǎn)品測試的需要峦萎,測試任務(wù)常會因設(shè)計和需求的改變而迅速改變屡久,這會讓設(shè)計人員難以應(yīng)付忆首。利用Tcl的可擴展性爱榔,測試人員能夠迅速地繼承多種新技術(shù),并針對產(chǎn)品新特點迅速推出擴展Tcl命令集糙及。

此外详幽,Tcl是一種比C/C++語言有著更高抽象層次的語言,使用Tcl可以在一種更高的層次上編寫程序,它屏蔽掉了C /C++程序必須涉及到的一些較為繁瑣的細節(jié)唇聘,從而提高開發(fā)測試的速度版姑。使用Tcl語言寫的測試例腳本,即使作了修改迟郎,也不需要重新編譯就可以調(diào)用 Tcl解釋器直接執(zhí)行剥险。這可以省去不少時間。

Tcl/Tk的好處

(1)快速開發(fā)

可以用Tcl完全編寫程序宪肖;

比C/C++或Java更高層次上開發(fā)表制;

Tk隱藏了C或Java程序元必須關(guān)注的很多細節(jié);

Tcl是解釋語言控乾,這是Tcl/Tk適用于快速開發(fā)的另一個語言么介。使用Tcl應(yīng)用程序可在運行中使用新腳本,無需重新編譯和重啟程序

正是因為Tcl是解釋語言蜕衡,因此運行速度比代碼編譯程序慢壤短,但是內(nèi)部的優(yōu)化(字節(jié)碼編譯)以及處理器性能的提高可以消除這個差距。

代碼和開發(fā)時間短慨仿。

(2)跨平臺

大多數(shù)情況下可以不加改動地運行在另一個平臺上久脯,如Linux的Tcl應(yīng)用跑在Windows上。

(3)擁有原生態(tài)Unicode支持的動態(tài)語言

可以處理幾乎所有的書面語言镰吆。無需擴展就可以處理Unicode支持的所有文本

(4)開源免費的軟件

(5)是個絕妙的“膠合語言”

1個Tcl應(yīng)用可包含很多不同的擴展桶现,每個擴展都分別提供一系列Tcl命令。?如Tk就是函數(shù)庫套件的例子鼎姊,應(yīng)用程序中Tcl腳本可以使用各套件提供的命令骡和。

(6)Tcl可以讓應(yīng)層程序很容易就擁有強大的腳本語言

Tcl不像其他語言,沒有確定的語法?解釋整個語言相寇,Tcl是由一個解釋器定義的慰于,這個解釋器解析單個Tcl命令,以及執(zhí)行許多個單個命令的過程集合唤衫。解釋器和它的替換規(guī)則是固定的?婆赠,但是新的命令可以隨時定義,并用來取代已經(jīng)存在的命令佳励。

控制流休里、過程以及表達式等功能都是通過命令實現(xiàn)的,它們并不能由Tcl解釋器直接理解赃承。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末妙黍,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子瞧剖,更是在濱河造成了極大的恐慌拭嫁,老刑警劉巖可免,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異做粤,居然都是意外死亡浇借,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進店門怕品,熙熙樓的掌柜王于貴愁眉苦臉地迎上來妇垢,“玉大人,你說我怎么就攤上這事肉康⌒藜海” “怎么了?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵迎罗,是天一觀的道長睬愤。 經(jīng)常有香客問我,道長纹安,這世上最難降的妖魔是什么尤辱? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮厢岂,結(jié)果婚禮上光督,老公的妹妹穿的比我還像新娘。我一直安慰自己塔粒,他們只是感情好结借,可當我...
    茶點故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著卒茬,像睡著了一般船老。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上圃酵,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天柳畔,我揣著相機與錄音,去河邊找鬼郭赐。 笑死薪韩,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的捌锭。 我是一名探鬼主播俘陷,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼观谦!你這毒婦竟也來了拉盾?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤坎匿,失蹤者是張志新(化名)和其女友劉穎盾剩,沒想到半個月后雷激,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體替蔬,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡告私,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了承桥。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片驻粟。...
    茶點故事閱讀 39,953評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖凶异,靈堂內(nèi)的尸體忽然破棺而出蜀撑,到底是詐尸還是另有隱情,我是刑警寧澤剩彬,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布酷麦,位于F島的核電站,受9級特大地震影響喉恋,放射性物質(zhì)發(fā)生泄漏沃饶。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一轻黑、第九天 我趴在偏房一處隱蔽的房頂上張望糊肤。 院中可真熱鬧,春花似錦氓鄙、人聲如沸馆揉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽升酣。三九已至,卻和暖如春态罪,著一層夾襖步出監(jiān)牢的瞬間拗踢,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工向臀, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留巢墅,地道東北人。 一個月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓券膀,卻偏偏與公主長得像君纫,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子芹彬,可洞房花燭夜當晚...
    茶點故事閱讀 44,901評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,381評論 0 5
  • 計算機編程語言可用于將指令傳達給計算機蓄髓。它們基于某些句法和語義規(guī)則,定義了編程語言中每種結(jié)構(gòu)的含義舒帮。 現(xiàn)在我得到了...
    幻凌風閱讀 8,157評論 1 26
  • 腳本語言又被稱為擴建的語言会喝,或者動態(tài)語言陡叠,是一種編程語言,用來控制軟件應(yīng)用程序肢执,腳本通常以文本(如ASCII)保存...
    Daimer閱讀 1,239評論 0 10
  • 去年也是這樣的季節(jié)枉阵,天氣微涼,我和女兒去丁玲公園散步偶遇兩只流浪小貓预茄,看著它倆那無助可憐的眼神兴溜,瘦小的身體在墻角...
    彎月彎閱讀 294評論 2 0
  • 他曾說,我想一輩子照顧你…… 他曾說耻陕,這樣的畫面想想就很美好——斑斕的地毯拙徽,我靠在他的肩膀,兩人手捧著書诗宣,周圍的花...
    姑娘二二閱讀 421評論 0 0