Wednesday, June 24, 2015

C ක්‍රමලේඛන භාෂාව


පරිගණක විද්යාවේ දී, C යනු පොදු කාර්ය පරිගණක භාෂාවක් වන අතර, මෙය ලොවට හඳුන්වාදුන්නේ 1969-1979 කාලය අතර AT&T බෙල් පර්යේෂණාගාරයේ දී ඩෙනිස් රිචී මහතා විසිනි.ALGOL සම්ප්රදායේ පවතින බොහෝ විධානාත්මක භාෂා වල මෙන්, C පරිගණක භාෂාවද ස්තිථික ටයිප් පද්ධති, බොහෝ අපෙක්ෂා නොකල කාරකයන් වළක්වද්දීත් ව්යූහාත්මක වැඩසටහන්කරණය පහසුකම් සැළසීම සහ lexical විචල් අවකාශයකට හා සහානුයාත වලට ඉඩදීම සිදු කරයි. C භාෂාවේ ප්රභව කේතයන් නිදහස් ආකෘතියක් ගන්නා අතර වැකි අවසන් කිරීම තිත් කොමාව(;) වැකි කාණඩගත කිරීම සඟල වරහන භාවිතා කරයි. එහි පවතින සැකැස්ම නිසා කාර්යක්ෂමව වැඩසටහනක ඇති අංගයන් ඊට අදාළ යන්ත් උපදෙස් වලට ඈඳීම කල හැකි අතර එම නිසා Unix පරිගණක මෙහෙයුම් පද්ධතියේ අඩංගු පද්ධති මෘදුකාංග වැනි Assembly පරිගණක භාෂාව භාවිතයෙන් ලියන ලද වැඩසටහන් පවා දිගින් දිගටම භාවිතා කිරීමට හැකියාව ලැබී ඇත.

C යනු මෙතෙක් ලොව වැඩියෙන්ම භාවිතා කර ඇති පරිගණක භාෂාව වන අතර C භාෂාව සඳහා භාෂා පරිවර්තකයක් දක්නට නොමැත්තේ ඉතා අඩු පරිගණක ආකෘතීන් කිහිපයක පමණකි.
C#, D, Go, Java, JavaScript, Limbo, LPC, Perl, PHP, Python, සහ Unix's C shell වැනි බොහෝ පසු කාලීන පරිගණක භාෂාවන් C පරිගණක භාෂාවේ ආභාෂය සෘජුව හෝ වක්රව ලබා ඇත. මෙවැනි භාෂාවල (Python භාෂාවේ හැර) වැඩිපුරම දක්නට ලැබෙන C භාෂාවේ බලපෑම් වන්නේ ඒවා සරල ආකෘතීමය රීතීන් වශයෙන් පැවතීම (syntactical) සහ C භාෂාවේ පවතින හඳුනාගන්නා ලද ප්රකාශනයන් හා වගන්ති ආකෘතීන් (syntax of C), බොහෝ විට වෙනස් විය හැකි මූලික type පද්ධති, දත්ත ආකෘතීන් හා අර්ථවිචාර සමග සංයුක්ත කිරීමට නැඹුරු වීමයි. C++ පරිගනක භාෂාව C භාෂාවේ පෙර සැකසුම් එකතුවක් වශයෙන් ආරම්භ වූ අතර වර්තමානය වන විට එය C භාෂාවේ මව් කුලකයක් (superset) ලෙස පවතී.

C භාෂාව සඳහා නිල ප්රමිතියක් තිබීමට ප්රථම ඩෙනිස් රිචී සහ බ්රයන් කර්නගෙන් විසින් රචිත අවිධිමත් පිරිවිතරක් මත බොහෝ භාවිතාකරන්නන් සහ ක්රියාවටනංවන්නන් විශ්වසය තබා තිබින. එම පිරිවිතර “K&R” C ලෙස හඳුන්වන ලදි. 1989 දී ඇමරිකානු ජාතික ප්රමිති ආයතනය C භාෂාව සඳහා ප්රමිතියක් ප්රකාශයට පත් කල අතර එයANSI Cහෝ C89 ලෙස හැඳින්වේ. ඉනික්බිති වර්ෂයේදී එම පිරිවිතරම ප්රමිතිකරණය සඳහා වන ජාත්යන්තර ආයතනය (ISO) අන්තර්ජාතික ප්රමිතියක් ලෙස (ව්යවහාරයේදී C90) ප්රකාශයට පත් කරන ලදි. 1995 දී ISO විසින් පසුව එම ප්රමිතියේ අන්තර්ජාතික සහයෝගීතවය උදෙසා තවත් දිගුවක් නිකුත් කරන ලදි. මෙම ප්රමිතිය 1999 දී සංශෝධනය කරන ලදි (ව්යවහාරයේදී C99). වර්ථමානයේදී භාවිතා කරන්නේ 2011 දෙසැම්බරයේ සම්මත කරන ලද C11 නම් ප්රමිතියයි.
More.....

From Wikipedia

Tuesday, June 16, 2015

පයිතන් ක්‍රමලේඛන භාෂාව



පයිතන් යනු බහුලව භාවිතාවන උසස් මට්ටමේ ක්රමලේඛන භාෂාවක් වන අතර එය නිර්මානය කර ඇත්තේ කේත කියවීමේ පහසුව අවධාරණය යුරිනි. පයිතන් සතුව ඇති අපුර්ව ගුණය වන්නේ එහි ඇති නිරවුල් කේත වින්යාසය සහ එහි සම්මත වැඩසටහන් ගොනුව ඉතා විශාල හා පරිපූර්ණ එකක් වීමයි. අනෙකුත් ප්රචලිත ක්රමලේඛන භාෂාවන් අතරින් මෙහි ඇති විශේෂත්වය නම් ක්රමලේඛනයේ භාවිතා වන පරිසීමක ඛණ්ඩක අතර හිස් ඉඩ තැබීම් වේ. පයිතන් බහු ක්රමලේඛන නාම මාලාවන්ට සහය වන අතර නමුත් එය සීමා නොවන්නේ වස්තු මූල,ප්රගම් හා ඉතා සුළු වශයෙන් කෘත්යයාත්මක ක්රමලේඛන රටාවන්ට පමණි.එය පූර්ණ ගතික පද්ධති වල ගුණ පෙන්වන අතර ස්වං මතක පාලනයද සිදුකරයි.එම ගුණය සමාන වන්නේ ස්කීම්,පර්ල්,රූබි හා tcl වැනි ගතික ක්රමලේඛන භාෂාවන්ටයි.

පයිතන් නොයෙක් විට ස්ක්රිප්ටින් ලිවීමට භාවිත කලද එය බහුලව භාවිත වෙනත් කාර්යයන් සඳහාය.පයිතන් ක්රමලේඛන පරිගණක වල ධාවනය වන වැඩසටහන් තුලට අන්තර්ගත කල හැකිය.පයිතන් පරිවර්ථක බොහෝ [පරිගණක] පාලක පදධති වල අඩංගු වේ. පයිතන් යනු නිදහස් හා විවෘත මෘදුකාංග ගනයට අයත් මෘදුකාංගයකි. එහි ඇත්තේ ප්රජාව මත පදනම්වූ සංවර්ධන ක්රමයකි.එහි සම්පූර්ණ හෝ විකල්ප සංස්කරණ සිදුකරයි.සීපයිතන් කළමණාකරනයන් සිදුකරන්නේ ලාභ නොලබන ආයතනයක් වන පයිතන් මෘදුකාංග පදනම මගිනි.

පයිතන් පිළිබඳ මුලින්ම අදහසක් ඇති වූයේ 1980 අග භාගයේය.එය ක්රියාත්මක කලේ ගයිඩො වෙන් රොසම්(Guido van Rossum) විසින් 1989 සිටයි.ඔහු ABC ක්රමලේඛණ භාෂාවේ ප්රවිණයෙකි එමෙන්ම එක්ස්සෙප්ට්ශන් හැඩලින් හා ඇමොයිබා මෙහෙයුම් පද්ධතියේ(Amoeba operating system) මුහුනත නිර්මාණය කිරීමේ ප්රවීණයෙකි.ඔහු පයිතන්හි මූලධර්ම රචකයාය. පයිතන් ප්රජාව විසින් ඔහුට පිරිණමා ඇති ප්රමුඛ ප්රධාන කාර්ය වන්නේ පයිතන්හි ඉදිරි ගමන තීරණය කිරීමයි පයිතන් 2.0 සංස්කරණය නිකුත්කලේ 2000වසරේ ඔක්තෝබර් 16 වනදාය.එහි නව අංග රැසක් අන්තර්ගත කර තිබුණා. ඒහි ගාබේජ්කලෙක්ටර් හා යුනිකෝඩ් සඳහාද පහසුකම් ලබාදී තිබුණා ඒමෙන් එහි විශේෂම වෙනස නම් සංවර්ධන ක්රියාවලිය ඔවුන් විසින් සිදුකිරීමත් එය වඩා විනිවිදභාවයෙන් හා නැවත ප්රජාව වෙතම සහන සැලසීමේ වැඩසටහනක් වීමයි.

පයිතන් 3.0(පයිතන් 3000,py3k) සංස්කරණය නිකුත්කලේ විශාල කාලයක් තුල සිදුකල අත්හදා බැලීම් වලින් අනතුරුව 2008 දෙසැම්බර් 3වනදාය.එය නිකුත්කලේ පෙර සංස්කරණ වන 2.6 හා 2.7 සමඟද ක්රියාත්මකවන අයුරින්ය. එය TIOBE වසරේ ක්රමලේඛන භාෂාව ලෙස 2006 හා 2010 වර්ෂ වලදී දෙවරක් සම්මාන ලබාගත්තා. එය ලබාදීමට එම වසර වලදී හේතුවූයේ පයිතන්හි අසමසම ජනප්රියත්වයේ වර්ධනය නිසාය.එය නීර්ණය කලේ TIOBE දර්ශකය අනුවයි.

පයිතන් බහු පැරඩිගමි භාෂාවකි.එම නිසා ක්රමලේඛකයන්ට විශේෂ ක්රමලේඛණ ආරකට හුරු වීමට සිදුවී තිබුණා.එය ඔබ්ජෙක්ට් ඔරියන්ටඩ් හා වියුහාත්මක ක්රමලේඛණ වලට සහය දක්වනවා. තවද එය කෘත්යාත්මක හා ඇස්පෙක්ට් ඔරියන්ටඩ් ක්රම ගනනක භාෂා ලක්ෂණ ලබා දී තිබෙනවා. අනෙකුත් පැරඩිගම් සඳහා භාෂා දිගුවන් මඟින් පහසුකම් ලබා දි තිබෙනවා. pyDBC හා පයිතන් සඳහා වූ කන්ට්රාස්ට්ය. පයිතන් නිර්මාණය කර ඇත්තේ විතන් භාෂාවක් ලෙසයි. අළුතින් සාදාඇති අංගයන් c හා c++ මඟින් ලියන්නට පුළුවන්. පයිතන් දැනට පවතින මොඩියුල් හා යෙදීම් වල දිගුවන් සඳහා ක්රමලේඛන භාෂාවක් ලෙස යොදා ගතහැකියි. මේ සඳහා ක්රමලේඛිත මුහුණතක් අවශ්යවෙනවා.ABC භාෂාවේ දුර්වලතා නිසා මෙය නිර්මාණය කර ඇත්තේ වෙන් රොසම් විසිනි.
ශ්රිතීය ක්රමලේඛණය තුල වූ ළිස්ප් සම්ප්රදාය සඳහා පයිතන් සීමිත සහයක් පමණක් ලබා දෙයි. කෙසේ වෙතත් පයිතන් හි රටාව පෙන්නුම් කරන්නේ ළිස්ප් වර්ගයට අයත් අවම භාෂාවල වැදගත් සමානකම්ය.(scheme)

පයිතන් ස්ක්රිප්ටින් භාෂාවක් ලෙස වෙබ් යෙදුම් සඳහා බොහෝවිට භාවිතා කරයිDjango, Pylons, TurboGears, web2py, Flask.සහ Zope වැනි වෙබ් යෙදුම් මුහුණත්හි සංකීර්ණ යෙදුම්වල නිර්මාණ හා නඩත්තු සඳහා රුකුල් දෙයිNumPy, SciPy,Matplotlib යන ලයිබ්(රී වල පයිතන් කාර්යශම පරිගණය සඳහා භාවිත වේ. මෘදුකාංග නිශ්පාදන ගණනාවක එනම් පරිමිත අංග ක්රමයේ මෘදුකාංග එනම් ඇබකස් සහ ත්රිමාණ සජීවීකරණ පැකේජ එනම් හොයුඩිනි,මායා,මෝෂන්බිල්ඩර්,සොෆ්ට් ඉමේජ්,සිනමා 4D,මෝඩා හා බ්ලෙන්ඩර් තවද 2D මූර්තන වැඩසටහන් එනම් GIMP,ඉන්ක්ස්පේස්,ක්යිබස් හා පේන්ට් ෂොප් ප්රො වල පයිතන් ස්ක්රිප්ටින් භාෂාව ලෙස සාර්ථකව භාවිතකරයි.ESRI දැන් පයිතන් ArcGIS වල පිටපත් ලිවීමට ඉතා සුදුසු බව ප්රකාශකර ඇත. එය පරිඝණක ක්රිඩා වලද භාවිතා කරතිබෙනවා. පයිතන් සම්මත සංරචකයක් ලෙස බොහෝ පාලක පද්ධතිවල එනම් ලිනක්ස්,නිදහස්BSD,ජාලBSD, විවෘතඹ්Sඹ් හා මැක්OSX වල භාවිතා කරයි.ටර්මිනල හරහාද භාවිතා කරයි.

බොහෝ ලිනක්ස් බෙදා හැරීම් ප්යිතන් භාෂාවෙන් ලියවුනු ස්ථාපනය කිරීම් වලද භාවිතා කරයි.උබන්ටු යුබික්විලිටි ස්ථාපන,රෙඩ් හැට් හා ෆෙඩෝරා වල ඇනකොන්ඩා ස්ථාපන,ගැන්ටු ලිනක්ස් හි පැකේජ පාලක පලක පද්ධති,ගැන්ටු ලිනක්ස් හි පැකේජ පාලක පද්ධති වල වලද භාවිතා කරයි.
From wikipedia