Kendala dari beberapa bahasa membuatnya lebih mudah untuk mengimplementasikan kode yang lebih cepat (misalnya Fortran vs C dan pointer aliasing) yang merupakan tradeoff antara kinerja dan kemungkinan out-of-the-box.
Bahasa tidak "dioptimalkan" untuk tugas-tugas tertentu, tetapi implementasi, kompiler dan kendala yang membuatnya lebih mudah untuk memahami kode dengan kompiler membuatnya demikian. Kesepakatan sebenarnya adalah tentang perpustakaan tertentu, algoritma diimplementasikan untuk mempercepat proses dengan switch tergantung pada panjang masalah membuatnya optimal.
Misalnya penggandaan menggunakan berbagai kasus (lihat penggandaan GMP .
Ketika bahasa menentukan operasi matematika tingkat yang lebih tinggi, penerapannya optimal (efisien dalam kasus ini), tetapi itu bukan bagian dari spesifikasi bahasa.
Silakan lihat perhitungan peringkat matriks di Matlab, Mathematica dan Maple (saya tidak bisa melakukan semua tes sendiri sekarang, tetapi ini konsisten dengan tes saya). Semua bahasa ini (lingkungan) menerapkan operasi tingkat yang sama lebih tinggi tetapi detail implementasi berbeda yang memberikan waktu yang berbeda.
Ketika beberapa tugas khusus domain (di sini juga bahasa khusus domain) diorientasikan pada perhitungan tertentu, mereka akan ditingkatkan dan dioptimalkan (selama bertahun-tahun) untuk audiens target. Tetapi menjadi optimal tidak selalu demikian. Misalnya Perl memiliki sejarah panjang dalam menangani string, tetapi PCRE (di sini hanya ekspresi reguler Perl) bukan yang tercepat yang ada (dan menggunakan banyak memori), tetapi sangat ekspresif dan kuat.
Kendala-kendala bahasa membuat perbedaan dalam proses kompilasi, pointer yang disebutkan di atas mencegah kemungkinan penyusunan ulang kode dan memaksakan pemuatan ulang variabel.