Masalah kepraktisan sangat subjektif, jadi saya hanya akan mengatakan bahwa mempelajari paradigma bahasa yang berbeda hanya akan membuat Anda menjadi programmer yang lebih baik. Apa yang lebih praktis dari itu?
Fungsional, Haskell - Saya tahu Anda mengatakan bahwa Anda tidak mau, tetapi Anda harus benar-benar mempertimbangkan kembali. Anda telah mendapatkan beberapa paparan fungsional dengan Clojure dan bahkan Python, tetapi Anda belum mengalaminya secara maksimal tanpa Haskell. Jika Anda benar-benar menentang Haskell maka kompromi yang baik adalah ML atau OCaml.
Deklaratif, Datalog - Banyak orang akan merekomendasikan Prolog di slot ini, tapi saya pikir Datalog adalah contoh yang lebih bersih dari bahasa deklaratif.
Array, J - Saya baru saja menemukan J, tapi saya merasa itu bahasa yang menakjubkan. Ini akan memutar pikiran Anda menjadi pretzel. Anda akan berterima kasih pada J untuk itu.
Stack, Factor / Forth - Factor sangat kuat dan saya berencana untuk menggali ASAP. Forth adalah kakek buyut dari bahasa Stack, dan sebagai bonus tambahan itu mudah untuk diterapkan sendiri. Ada sesuatu yang bisa dikatakan tentang belajar melalui implementasi.
Dataflow, Oz - Saya pikir pengaruh Oz sedang naik dan hanya akan terus tumbuh di masa depan.
Berbasis prototipe, JavaScript / Io / Self - Self adalah grand-daddy dan sangat berpengaruh pada setiap bahasa berbasis prototipe. Ini tidak sama dengan OOP berbasis kelas dan tidak boleh diperlakukan seperti itu. Banyak orang datang ke bahasa prototipe dan membuat sistem kelas ad-hoc, tetapi jika tujuan Anda adalah untuk memperluas pikiran Anda, maka saya pikir itu adalah kesalahan. Gunakan bahasa untuk kapasitas penuhnya. Baca Program Pengorganisasian tanpa Kelas untuk ide.
Sistem Pakar, KLIP - Saya selalu merekomendasikan ini. Jika Anda tahu Prolog maka kemungkinan Anda akan unggul dalam kecepatan, tetapi bahasa yang sangat berbeda.
Frink - Frink adalah bahasa tujuan umum, tetapi terkenal dengan sistem konversi unitnya. Saya menemukan bahasa ini sangat menginspirasi dalam dorongan tanpa henti untuk menjadi yang terbaik dalam fungsinya. Plus ... itu sangat menyenangkan!
Tipe Fungsional + Opsional, Qi - Anda mengatakan Anda memiliki pengalaman dengan beberapa sistem tipe, tetapi apakah Anda memiliki pengalaman dengan "sistem tipe skinnable *? Tidak ada yang ... tetapi mereka seharusnya. Qi seperti Lisp dalam banyak hal, tetapi sistem ketik akan meniup pikiran Anda.
Aktor + Toleransi kesalahan, Erlang - Model proses Erlang mendapat banyak perhatian, tetapi mekanisme toleransi kesalahan dan hot-code-swapping-nya mengubah permainan. Anda tidak akan belajar banyak tentang FP yang tidak akan Anda pelajari dengan Clojure, tetapi fitur FT-nya akan membuat Anda bertanya-tanya mengapa lebih banyak bahasa sepertinya tidak bisa melakukan ini dengan benar.
Nikmati!