Sederhana: Lua memiliki lebih banyak tujuan "niche" daripada Python .
Python dianggap berguna sebagai bahasa pemrograman umum. Jadi, ini berguna dalam banyak kasus. Ini mencakup banyak jenis aplikasi yang terkenal tetapi tidak masuk langsung ke persaingan dengan bahasa lain yang mungkin ditargetkan pada kendala tertentu, tetapi kesederhanaan sintaksisnya.
Lua benar-benar ditargetkan untuk menjadi bahasa skrip tertanam. Ini tujuan awal, bahkan jika itu digunakan dalam konteks lain saat ini, seperti membangun sistem; harus tertanam dalam perangkat lunak dan untuk memudahkan implementasi fungsi dan struktur skrip khusus domain. Ini sangat minimalis sehingga bahkan dapat digunakan pada perangkat keras yang benar-benar terbatas (saya menggunakan Lua pada NintendoDS), ringan, mudah digunakan, CEPAT, dan merupakan bahasa yang minimalis tetapi dianggap diperluas dengan banyak dialek (mengimpor paradigma seperti objek-orientasi) tersedia. Ini sangat portabel (ANSI C) sehingga Anda dapat menggunakannya pada perangkat keras tertanam dengan jumlah memori yang layak untuk perangkat lunak tertanam modern (jika saya ingat betul lua vm default adalah sekitar 400ko dan hampir tidak akan pernah tumbuh jika Anda tidak membuat objek) ...).
Jadi, Lua awalnya digunakan dalam konteks di mana Anda harus menanamkan bahasa scripting untuk aplikasi Anda .
Python digunakan untuk ... hampir semua hal yang tidak memerlukan bahasa yang lebih khusus (Anda dapat membuat game yang sangat performan menggunakan Python, tetapi beberapa jenis game yang sangat membutuhkan kinerja benar-benar harus menghindari sistem seperti itu).
Hanya saja Python digunakan dalam lebih banyak konteks daripada Lua. Sejauh yang saya tahu, selain Android (yang menyediakan dukungan Java dan bahasa asli), Google bukanlah perusahaan perangkat lunak yang disematkan sehingga mereka tidak benar-benar membutuhkan Lua di mana-mana, sementara Python berguna untuk apa pun yang mereka lakukan (web, sistem bangun , komunikasi, web dan web).
Python digunakan dalam banyak game untuk skrip tertanam juga, tapi ini lebih berat dan lebih lambat dari Lua. Sintaksis Python membuatnya lebih sesuai untuk gim besar yang sangat bergantung pada informasi skrip dalam struktur gim mereka (tidak yakin saya jelas di sana tetapi hanya berpikir bahwa jika Anda memerlukan "bahasa lengkap yang nyata" untuk skrip, menanamkan Python mungkin ide yang bagus, jika kinerjanya baik untuk Anda). Python tidak dibuat untuk disematkan, jadi itu tidak masalah. Setara dengan Python yang ditargetkan tertanam di C ++ adalah Falcon.
Untuk perbandingan ekstrim, beberapa bahasa yang menargetkan penyisipan dan mencoba untuk memiliki sintaksis yang lebih lengkap daripada Lua minimalis, dan bersaing dalam kinerja: ChaiScript, AngelScript, ...
Omong-omong, saya telah melihat sistem build baru seperti PreMake atau Bam menggunakan Lua sebagai bahasa file build. Idenya adalah ringan dan terkenal dari pengembang game (membangun sistem dalam pengembangan game adalah masalah utama). Jadi mungkin itu domain lain di mana Lua mungkin lebih dihargai. Ini tentu saja lebih ramah pengguna daripada sintaks CMake ....