Jika Anda bisa mengukurnya, Anda bisa membuat bahasa yang bisa mengoptimalkannya.
Meskipun saya tidak tahu bahasa tertentu yang benar-benar memberlakukan kebijakan "kode bersih", polisi gaya yang berjalan pada build cukup umum.
Alasan utama bahwa ini adalah langkah terpisah dari dimasukkan ke dalam bahasa sebagian besar adalah fungsi prioritas. Ini demi kepentingan terbaik dari bahasa pemrograman untuk memungkinkan fleksibilitas yang paling besar bagi programmer untuk mendapatkan tingkat adopsi yang paling luas. Ada begitu banyak bahasa pemrograman dan DSL yang berbeda yang membatasi basis pengguna secara artifisial dengan menjadi pemilih dan berpendapat tentang input apa yang diperbolehkan kemungkinan akan menghalangi adopsi yang lebih luas.
Misalnya, bukan kepentingan terbaik C # untuk memaksa orang menulis
if (condition)
{
dari pada
if (condition) {
Tapi checker gaya dapat dianggap pemilih karena itulah yang dirancang untuk mereka lakukan.
Jadi, untuk menjawab pertanyaan
Bisakah bahasa pemrograman memberlakukan kode bersih dengan desain?
penekanan milikku
Tentu saja, selama Anda memberikan definisi yang kuat untuk arti "kode bersih".
Sebagai contoh, saya mungkin mendefinisikan "kode bersih" yang berarti:
- panjang garis tidak lebih dari 80 karakter
- fungsi terdiri dari tidak lebih dari 100 baris
- lekukan harus dua spasi
- kurung kurawal terbuka harus mengikuti di ujung garis didahului oleh tepat satu ruang
- tidak lebih dari dua operator per saluran
dan Anda mungkin tidak setuju dengan beberapa atau semua konvensi ini, tetapi pada akhirnya konvensi ini dapat diukur dan dapat ditegakkan secara terprogram.