না - গতিশীল ভাষাগুলি সংকলন করা অবশ্যই সম্ভব।
এমন কি কিছু গতিশীল ভাষা রয়েছে যা সর্বদা ডিজাইন দ্বারা সংকলিত হয় (উদাহরণস্বরূপ Clojure)।
প্রশ্ন কিন্তু একটি গুরুত্বপূর্ণ সংশ্লিষ্ট বিন্দুতে স্পর্শ করে: যদিও গতিশীল ভাষায় কম্পাইল করা যেতে পারে, এটা প্রায়ই ক্ষেত্রে যে গতিশীল langauges হয় কোডে নিচে কম্পাইল করা যাবে না যার এমন কোন স্ট্যাটিক্যালি টাইপ ভাষা হিসেবে দক্ষ হিসাবে । এটি কারণ ডায়নামিক ভাষাগুলিতে কিছু অন্তর্নিহিত বৈশিষ্ট্য রয়েছে যাগুলির জন্য রানটাইম চেকগুলির প্রয়োজন যা স্থিরভাবে সংকলিত ল্যাঙ্গোজে অপ্রয়োজনীয় হবে।
এর উদাহরণ: যে ভাষাগুলি বস্তুর রানটাইম প্যাচিংয়ের অনুমতি দেয় (উদাহরণস্বরূপ রুবি) প্রায়শই আপনি যখন কোনও বস্তুর উপর কোনও পদ্ধতিতে অনুরোধ করেন তখন অবজেক্টটি (হ্যাশট্যাবাল লুকআপ বা অনুরূপ সহ) পরিদর্শন করা প্রয়োজন। এটি সংকলিত হয়ে গেলেও, সংকলকটি রানটাইম সময়ে পদ্ধতি অনুসন্ধানের জন্য কোড তৈরি করতে হবে। কিছুটা হলেও এই পদ্ধতির অনুসন্ধানটি দোভাষীর কী করতে হবে তার থেকে আলাদা নয়।
জাভা জাতীয় ভাষায় কোনও মেথড কলের সাথে তুলনা করার সময় এটি উল্লেখযোগ্য ওভারহেড যুক্ত করে, যেখানে ক্লাস সংজ্ঞা থেকে সংকলক দ্বারা সঠিক পদ্ধতিটি স্থিরভাবে নির্ধারণ করা যেতে পারে এবং নেটিভ কোডে একটি সাধারণ ফাংশন কলটিতে হ্রাস করা যেতে পারে।
আমি বিশ্বাস করি এটি অন্য যে কোনও কিছুর চেয়ে এই প্রভাবের ফলস্বরূপ গতিময় ভাষাগুলিতে স্থিতিশীলভাবে সংকলিত অংশগুলির তুলনায় গড়ে ধীর পারফরম্যান্স হয়। আপনি যেমন ত্রুটিযুক্ত বেঞ্চমার্কগুলি থেকে দেখতে পাচ্ছেন , এটি স্ট্যাটিকালি টাইপ করা ভাষাগুলি (সি, জাভা, ফোর্টরান ইত্যাদি) যা র্যাঙ্কিংয়ের নীচে গতিশীল ভাষাগুলি (পার্ল, পাইথন, রুবি, পিএইচপি ইত্যাদি) দিয়ে দ্রুততর হয়।