Є деякі бібліотеки, які доступні у своїх версіях, написаних багатьма різними мовами програмування, як, наприклад, Lucene , який написаний на Java (як то кажуть, на 100% чиста Java), але також є свої версії на C ++, C, Perl , Ruby, Lisp та деякі інші мови. І я говорю про реалізації на цих мовах, а не лише інтерфейси FFI .
Чому люди так роблять? Я бачу одну очевидну причину: розгортання та розповсюдження (і, можливо, також розвиток) легше, коли проект має менше залежностей. Але чи є ще щось? У яких ситуаціях воно того варте?