நிரலாக்கம் அறிமுகம்/நிரலாக்க மொழிகள்
நிரல் மொழிகள்
[தொகு]நிரல் மொழிகள் பயன்பாடு, வடிவமைப்பு, தலைமுறை போன்ற வகைப்பாடுகளால் வேறுபடுகின்றன. வெவ்வேறு தேவைகளுக்கு வெவ்வேறு மொழிகள் பயன்படுகின்றன. எ.கா Shell script வழங்கி நிர்வாக வேலைகளுக்கும், பி.எச்.பி/ரூபி போன்ற மொழிகள் வலைச்செயலிகளுக்கும், வினவல் மொழி தரவுத்தள ஊடாட்டங்களுக்கும், சி++ போன்ற மொழிகள் நிரலாக்க விளையட்டுக்களுக்கும் பயன்படுகின்றன. வடிவமைப்பு நோக்கில் நிரலாக்க மொழிகள் பணிமுறை நிரல் மொழிகள் (Functiona), ஏவல் மொழிகள் (Imperative), ஏரண மொழிகள் (Logical), பொருள்நோக்கு நிரலாக்க மொழிகள் (Object Orientered) என்று வகைப்படுத்தப்படுகின்றன.
இயந்திர மொழிகள் முதலாம் தலைமுறை மொழிகள் ஆகும். மனித மொழிபோன்ற கூறுகளைக் கொண்ட போர்ட்ரான், அல்கோல் போன்ற மொழிகள் இரண்டாம் தலைமுறை மொழிகள். மூன்றாம் தலைமுறை மொழிகளில் எழுதப்பட்ட நிரல்கள் எந்த வன்பொருட்களிலும் இயங்க கூடியவையாக அமைந்தன. சரம், அணி, மற்றும் பிற பொதிவுத் தரவு இனங்களும் மொழிக் கூறுகளும் அறிமுகப்படுத்தப்பட்டன. சி, சி++, ஜாவா ஆகியவை இந்த தலைமுறையைச் சார்ந்த இன்னும் பரந்த பயன்பாட்டில் இருக்கும் மொழிகள் ஆகும்.
எழில் (நிரலாக்க மொழி)
[தொகு]எழில் (Ezhil), தமிழில் எழுதும்வகையில் உருவாக்கப்பட்டுள்ள நிரலாக்க மொழியாகும்.[15]. இதில் தமிழ் கலைச் சொற்களைக் கொண்டே நிரல்கள் எழுத முடியும். இது இலவசமாகக் கிடைக்கக்கூடிய ஒரு நிரல் மொழியாகும். இம்மொழி இன்னோர் பிரபல மொழியாகிய பைத்தானு(Python)டன் ஒத்து இயங்கும்படி உருவாக்கப்பட்டுள்ளது. பைத்தானின் நிரலகங்களைப் பயன்படுத்தி இயங்கும் இந்த மொழியில், ஆங்கிலத்திலும் நிரல்களை எழுதமுடியும். எழில் பற்றி மேலும் அறிய விக்கிப்பீடியா கட்டுரை தமிழில் அல்லது ஆங்கிலத்தில் வாசிக்க. [1]
ஏவல் (Imperative) மொழிகள்
[தொகு]இன்று பரந்த பயன்பாட்டில் இருக்கும் சி, சி++, யாவா, பி.எச்.பி, பெர்ள், ரூபி, பைத்தான் ஆகிய மொழிகள் மூன்றாம் தலைமுறை ஏவல் (Imperative) மொழிகள் ஆகும். ஏவல் மொழிகள் ஒரு நிரல் என்னதை எப்படிச் செய்ய வேண்டும் என்பதைப் படிப்படையாக கூற்றுக்களாக விபரிக்கும். இந்த மொழிகளின் கூற்றுக்கள் நிரலின் நிலையை (state) மாற்றும், பக்க விளைவுகளை (side effects) ஏற்படுத்தும்.
ஏவல் மொழிகளை தொகுப்பு (compiled) மொழிகள் Interpreted மொழிகள் என இரு வகைப்படுத்தலாம். தொகுக்கப்பட்ட மொழிகளில் நிரல்கள் முழுமையாக இயந்திர மொழிக்கு மாற்றப்பட்டு இயக்கப்படுகின்றன. எ.கா "+" என்ற செயற்பாடு "கூட்டு" என்று நேரடியாக மொழிபெயர்க்கப்படும். Interpreted மொழிகளில் ஒரு Interpreter இடைத்தரகராகச் செயற்படும். எ.கா "+" என்பது நிரல் இயக்கப்படும் போது Interpreter தனது "கூட்டு(a,b)" செயலியை செயற்படுத்தும். அந்தச் செயலில் "கூட்டு" என்ற இயந்திர மொழிக் கட்டளையை இயக்கும். தொகுப்பு மொழிகள் மிக வேகமாக இயங்கக் கூடியன. Interpreted மொழிகள் நிரலாக்கதுக்கு வசதியானவை.