[[ചിത്രം:Compiler.svg|right|thumb|350px|ബഹുഭാഷ-ബഹുലക്ഷ്യ മാതൃകാകംപൈലറിന്റെ ചിത്രം]]
ഒരു പ്രോഗ്രാമിംഗ് ഭാഷയില് എഴുതിയിരിക്കുന്ന [[കമ്പ്യൂട്ടര് പ്രോഗ്രാം|പ്രോഗ്രാമിനെ]] വേറെയൊരു ഭാഷയിലുളള അതേ കാര്യക്ഷമതയുളള പ്രോഗ്രാമായിട്ടു മാറ്റുന്നതിനുള്ള കംപ്യൂട്ടര് പ്രോഗ്രാം ആണ് കമ്പൈലര്'''കംപൈലര്'''. ഏതു ഭാഷയിലുള്ള പ്രോഗ്രാമിനെയാണോ മാറ്റേണ്ടത്, അതിനെ മൂലഭാഷയെന്നും (source language) മാറ്റം വരുത്തിയതിനു ശേഷം കിട്ടുന്ന ഭാഷയെ ലക്ഷ്യഭാഷ(target) എന്നും പറയ്യുന്നു. [[ഉന്നതതലഭാഷ|ഉന്നതതലഭാഷകളെയാണ്]] (high level language) കമ്പൈലറുകളില് മൂലഭാഷയായി സ്വീകരിക്കുന്നത്. സാധാരണയായി കണ്ടുവരുന്ന മൂലഭാഷകള് [[സി]] (C), [[സി++]] (C++), [[ജാവ]] (Java), കോബോള് (Cobol), പാസ്കല് (Pascal) എന്നിവയാണ്. ലക്ഷ്യഭാഷകള് ഒരു കംപ്യൂട്ടറിന്റെ [[യന്ത്ര തല ഭാഷ|യാന്ത്രിക ഭാഷയോ]], intermediate ഭാഷയോ ആകാം. പരിവര്ത്തനം ചെയ്യുന്നതിനായി മൂലഭാഷയില് എഴുതിയ പ്രോഗ്രാമിനെ സോഴ്സ് കോഡ് എന്നും കംപൈലറുകളില് നിന്നു പരിവര്ത്തനത്തിനു വിധേയമായി പുറത്തു വരുന്ന ലക്ഷ്യഭാഷയിലുളള പ്രോഗ്രാമിനെ ഒബ്ജക്റ്റ് കോഡ് (object-code) എന്നുമാണ് വിളിക്കുന്നത്.
കംപൈലറുകളെ അവയുടെ നിര്മ്മാണരീതിയേയും ധര്മ്മത്തേയും അടിസ്ഥാനമാക്കി സിംഗിള്-പാസ്,മള്ടി-പാസ്,ലോഡ് -ആന്റ്-ഗോ,ഡിബഗ്ഗിങ്,ഒപ്റ്റിമൈസിങ് എന്നിങ്ങനെ വിഭജിക്കാം.
== ചരിത്രം ==
1950കളുടെ ആദ്യകാലങ്ങളിൽ തന്നെ കംപൈലര് പ്രോഗ്രാമുകള് എഴുതിത്തുടങ്ങുകയും അവ പരീക്ഷിക്കുകയും പ്രയോഗത്തില് വരുത്തുകയും ചെയ്തിരുന്നു.പല കൂട്ടങ്ങളായി സ്വതന്ത്രമായി പലയിടങ്ങളിലായാണ് ഈ പ്രൊഗ്രാമുകള് എഴുതിയിരുന്നത് എന്നതിനാല് ആദ്യകംപൈലര്ആദ്യ കംപൈലര് പ്രോഗ്രാം ഏതെന്നും എന്നാണ് ആദ്യമായി പ്രയോഗത്തിൽ വരുത്തിയത് എന്നും വ്യക്തമല്ല.
ആദ്യത്തെ ഫോർട്രാൻ കംപൈലര്1957കംപൈലര് 1957-ൽ [[അമേരിക്കന് ഐക്യനാടുകള്|അമേരിക്കയിലെ]] [[ഐ.ബി.എം കോര്റേഷന്|ഐ.ബി.എം.(IBM) കോര്റേഷനിലെ]] [[ജോണ് ബാക്കസ്]] പ്രയോഗത്തിൽ വരുത്തി. കംപൈലറുകള്, നിര്മ്മിക്കാന് ബുദ്ധിമുട്ടുളള വളരെ സങ്കീര്ണ്ണമായ പ്രോഗ്രാമുകളാണ്. ഫോർട്രാൻ കംപൈലര് നിര്മ്മിക്കാന് തന്നെ 18 വര്ഷങ്ങള് വേണ്ടി വന്നു എന്നതില് നിന്നും ഈ സങ്കീര്ണത എത്രത്തോളമുണ്ടെന്ന് ഊഹിക്കാം.<ref>Compilers: Principles, Techniques and Tools by Alfred V. Aho, Ravi Sethi, and Jeffrey D. Ullman (ISBN 0-201-10088-6) link to publisher. Also known as 'The Dragon Book'.</ref>
കംപൈലറുകളുടെ ആദ്യകാല പ്രവര്ത്തനങ്ങളില് ബീജഗണിത സൂത്രവാക്യങ്ങളെ യാന്ത്രികഭാഷയിലേക്ക് പരിവര്ത്തനം ചെയ്യുക എന്നതായിരുന്നു പ്രധാനം.
{{stub|Compiler}}
[[വര്ഗ്ഗം:കംപൈലറുകള്]]
[[വിഭാഗം:സിസ്റ്റം സോഫ്റ്റ്വെയര്]]
[[വര്ഗ്ഗം:കംപൈലര് തിയറി]]
[[വിഭാഗം:അപൂര്ണ്ണലേഖനങ്ങള്]]
[[വര്ഗ്ഗം:കമ്പ്യൂട്ടര് ലൈബ്രറികള്]]
[[af:Vertalerkonstruksie]]
|