تي سي إل

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث
بحاجة لمصدر المحتوى هنا ينقصه الاستشهاد بمصادر. يرجى إيراد مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها.(سبتمبر_2010)
تي سي إل
Tcl.svg

التصنيف برمجة إجرائية، برمجة كائنية
ظهرت في 1988
صممها جون أوستورهوت
التطوير
المطور جون أوستورهوت، Tcl Core Team
آخر إصدار 8.5.12
رقمه 8.5.12 (2012-07-27؛ منذ 764 يومًا)
آخر إصدار غير مستقر 8.6b2 7
التأثير
متأثرة بـ أوك، ليسب
أثرت في ويندوز باورشيل، تي
متفرقات
امتدادات الملفات .tcl
موقع ويب tcl.sourceforge.net

تي سي أل هي اختصار لأداة التحكم باللغة ولكن أصبح الناس يقول لها تي سي أل لتسهيل الكلام تلفظ ككلمة (تكل)أو تلفظ تي سي إل هذه هي لغة برمجية متعددة الاستخدام أنشأها جون اوستيرهوت.في الأصل "ولدت من الإحباط" وفقا للمؤلف، مع وضع المبرمجين الخاصة بها (نوعية رديئة) لغات يقصد به أن يكون جزءا لا يتجزأ من داخل التطبيقات التي سي إل حظيت بالقبول من تلقاء نفسها. التي سي إل يستخدم عادة للنماذج السريعة، التطبيقات النصية، وواجهة المستخدم الرسومية والاختبار.تس سي إل يستخدم لمنصات الأنظمة المطمورة، سواء في شكله الكامل أو في اصدارات سمول برينتر أخرى التي سي إل يستخدم أيضا في برمجة المدخل العمومي لأجهزة التوصيل.

التاريخ[عدل]

لغة البرمجة للتي سي إل أخترعت في ربيع سنة 1988 من قبل جون اوسترهوت عندما كان يعمل في جامعة كاليفورنيا,بيريكيلي.

في شهر 1 من سنة 1990 : اعلن التي سي أل في جامعة بيريكلي (شتاء مجموعة مستخدمي اليونيكس)

في شهر 6 من سنة 1990:توقع اعلان (صيف مستخدمي يونيكس)

في شهر 1 من سنة 1990 : أول اعلان للتي كي (شتاء مستخدمي يونيكس)

في شهر 6 من سنة 1993 : أول مؤتمر لتي كي وتي سي أل في بيريكلي.

في شهر 9 من سنة 2002: تاسع اجتماع لتي سي أل وتي كي في فانكوفر الإعلان عن نظام التغليف ستاركيت

مقالات تي سي أل عقدت في أمريكا وأوروبا

ملامح[عدل]

ملامح التي سي إل تضم:

  • جميع العمليات هي اوامر بما في ذلك قواعد اللغة وهي مكتوبة في تدوين البادئة
  • الأوامر هي بالعادة مبرمجة
  • كل شيء يمكن ان يعمل اعادة تعريف ديناميكية وجاوز
  • يمكن التلاعب بجميع أنواع البيانات مثل الآلات الوترية.بما في ذلك الكود
  • جميع الاوامر تعرف بالتي سي إل ومن تلقاء نفسها تظهر رسائل خطأ في استخدام غير صحيح
  • التي سي إل قابل للمد، بواسطة السي والسي بلص بلص والجافا والتي سي إل
  • ترجمة اللغة بواسطة الباي كود
  • دعم اليوني كود الكامل (3.1) ,أول ظهور لها في 1999
  • برامج مستقلة: وين32، يونيكس، لينوكس، ماك إلى اخره
  • اغلاق كامل مع نوافذ واجهة المستخدم الرسومية تي سي

التي سي إل لم تدعم من وجوه المنحى بناء الجملة قبل 8.6 (8.6 تزود ال نظام الاوه أو في جوهر التي سي إل إذا وظائف الاوه أو زودت بواسطة علب الامتداد. حتى الاوه أو المكتوب بنقاء علب.

أمثلة[عدل]

proc ! x {expr {$x<2? 1: $x*[! [incr x -1]]}}
  • حساب قائمة من الأرقام

بإستعمال الدالة foreach:

set nombres {10 9 8 7 6 5 4 3 2 1}
set somme 0
foreach i $nombres { 
   set somme [expr {$somme + $i}]
}

أو أكثر إحكاما باستخدام الأمر join:

set somme [expr [join $nombres +]]
  • استبدال الحروف في جدول بإستعمال الأمر string:
set sequence "ACGTATTACGGTCCATGAACGAATTGGGATATCGACCATGATGGAATTCTG"
puts [string map {GA R TC Y GT K AC M GC S AT W} $sequence]
  • تحميل صفحة HTML:
package require http
puts [http::data [http::geturl http://mini.net/tcl/540]]
  • إعطاء الوقت عن طريق الخطاب الصوتي على أندرويد:
package require android
set android [android new]
set time [clock format [clock seconds] -format "%I %M %p on %A, %B %e %Y."]
android speak $time

كلمات محجوزة[عدل]

after		 exec		list		read		tm
append		 exit		llength		refchan		trace
apply		 expr		lmap		regexp		trap
array		 fblocked	load		registry *	try
auto_execok	 fconfigure	lrange		regsub		unknown
auto_import	 fcopy		lrepeat		rename		unload
auto_load	 file		lreplace	return		unset
auto_mkindex	 fileevent	lreverse	scan		update
auto_mkindex_old filename	lsearch		seek		uplevel
auto_qualify	 finally	lset		set		upvar
auto_reset	 flush		lsort		socket		variable
bgerror		 for		mathfunc	source		vwait
binary		 foreach	mathop		split		while
break		 format		memory		string		yield
catch		 gets		msgcat		subst		yieldto
cd		 glob		namespace	switch		zlib
chan		 global		open		tailcall
clock		 history	package		tcl_endOfWord
close		 http		parray		tcl_findLibrary
concat		 if		pid		tcl_startOfNextWord
continue	 incr		pkg::create	tcl_startOfPreviousWord
coroutine	 info		pkg_mkIndex	tcl_wordBreakAfter
dde *		 interp		platform	tcl_wordBreakBefore
dict		 join		platform::shell	tcltest
encoding	 lappend	proc		tclvars
eof		 lassign	puts		tell
error		 lindex		pwd		throw
eval		 linsert	re_syntax	time

(*): مخصصة لمنصة ويندوز

وصلات خارجية[عدل]

أنظر أيضا[عدل]

المصادر[عدل]

Do while cyklus.png هذه بذرة مقالة عن برمجيات الحاسوب تحتاج للنمو والتحسين. ساهم في إثرائها بالمشاركة في تحريرها.