Có một số thư viện, có sẵn trong các phiên bản của họ được viết bằng nhiều ngôn ngữ lập trình khác nhau, ví dụ như Lucene , được viết bằng Java (như họ nói, Java thuần túy 100%), nhưng cũng có các phiên bản của nó bằng C ++, C, Perl , Ruby, Lisp và một số ngôn ngữ khác. Và tôi đang nói về việc triển khai trong các ngôn ngữ này, không chỉ các giao diện FFI .
Tại sao mọi người làm điều đó? Tôi có thể thấy một lý do rõ ràng: triển khai và phân phối (và có lẽ cũng phát triển) dễ dàng hơn khi một dự án có ít phụ thuộc hơn. Nhưng còn gì nữa không? Trong những tình huống là nó có giá trị nó?