Ada beberapa perpustakaan, yang tersedia dalam versi mereka yang ditulis dalam banyak bahasa pemrograman yang berbeda, seperti misalnya Lucene , yang ditulis dalam Java (seperti yang mereka katakan, 100% Java murni), tetapi juga memiliki versinya dalam C ++, C, Perl , Ruby, Lisp dan beberapa bahasa lainnya. Dan saya berbicara tentang implementasi dalam bahasa ini, bukan hanya antarmuka FFI .
Mengapa orang melakukan itu? Saya dapat melihat satu alasan yang jelas: penyebaran dan distribusi (dan mungkin pengembangan juga) lebih mudah ketika sebuah proyek memiliki lebih sedikit ketergantungan. Tetapi apakah ada hal lain? Dalam situasi apa itu sepadan?