اکمل

اُکمل  در اصل شناخته شده به عنوان «کمل شئ گرا»، پیاده‌سازی عمدهٔ زبان برنامه‌نویسی کمل ۱۹۹۶ ساخته توسط ژاویر لیروی و سایرین ساخته شد. اُکمل زبان کمل را را به ساختارهای شئ گرا گسترش می‌دهد.

ابزارهای اکمل شامل یک مفسر سطح بالا، یک کامپایلر بایت‌کد، یک مدیر بسته/پکیج منیجر (OPAM)، و یک کامپایلر آپتیمایز کننده به زبان ماشین است. این زبان کتابخانهٔ استاندارد بزرگی دارد که آن را در بسیاری از کاربردهایی که پایتون و پرل استفاده می‌شوند کاربردی می‌کند، همین‌طور ساختارهای قویا مدولار شئ گرای این زبان آن را برای مهندسی نرم‌افزار در سطح بزرگ کارآمد می‌کند. اکمل یک جانشین برای کمل لایت است. سرواژهٔ CAML مخفف Categorical Abstract Machine Language(زبان رده‌ای ماشین انتزاعی) است، اگر چه CAML از این ماشین انتزاعی دل کنده.

اکمل یک زبان پروژهٔ آزاد و متن باز است و توسط INRIA نگهداری می‌شود. در سالهای اخیر، زبان‌های زیادی به عناصر اکمل جذب شده‌اند، خصوصاً اف شارپ و اسکالا.

فلسفه 
زبان‌های مشتق شده از ام‌ال به طور خاص نسبت به سیستم تایپ و همچنین کامپایلرهایی که قادر به استنتاج نوع داده هستند شناخته می‌شوند. اکمل برنامه‌نویسی تابعی، امری، و شئ گرا را تحت یک سیستم نوع دادهٔ به هم آمیخته. ام‌ال-مانند دربر گرفته. این یعنی لازم نیست که برنامه‌نویس کاملاً با برنامه‌نویسی تابعی خالص آشنا باشد تا بتواند از زبان استفاده کند.

سیستم نوع دادهٔ اکمل می‌تواند در کاهش مشکلات برنامه در حین اجرا کمک کند. اگرچه، این خود برنامه‌نویس را مجبور می‌کند که خود را با شرایط سیستم نوع وفق دهد، که ممکن است نیاز به فکر و توجه دقیق داشته باشد. یک کامپایلر استنتاج کنندهٔ نوع می‌تواند به شدت نیاز به نشانه گذاری‌های دستی را کاهش دهد (برای مثال، نوع دادهٔ متغیرها و اثر توابع نیاز نیست آنطور که در جاوا مشخص می‌شود، صریحاً مشخص شود). به هر حال، استفادهٔ مؤثر از سیستم نوع دادهٔ اکمل ممکن است نیاز به تجربهٔ بیشتری برای برنامه‌نویس دارد.

منابع 

زبان‌های برنامه‌نویسی ایستا
زبان‌های برنامه‌نویسی با نحو گسترش‌پذیر
زبان‌های برنامه‌نویسی تطبیق الگو
زبان‌های برنامه‌نویسی ساخته‌شده در ۱۹۹۶ (میلادی)
زبان‌های برنامه‌نویسی شیءگرا
زبان‌های تابعی
کامپایلرها و مفسرهای آزاد
نرم‌افزارهای آزاد چندسکویی