Trong ngắn hạn, giải pháp đơn giản nhất là sử dụng Inline :: Python. Theo dõi chặt chẽ bằng cách gọi một kịch bản dòng lệnh.
Về lâu dài, sử dụng máy chủ để cung cấp chức năng RPC hoặc chỉ cần gọi một tập lệnh dòng lệnh sẽ cung cấp cho bạn giải pháp chứng minh tương lai nhất.
Tại sao?
Bằng cách đó bạn không bị ràng buộc với Perl hoặc Python làm ngôn ngữ được sử dụng để xây dựng hệ thống sử dụng các dịch vụ do thư viện của bạn cung cấp. Hoặc là phương pháp tạo ra một giao diện độc lập, rõ ràng về ngôn ngữ mà bạn có thể sử dụng với bất kỳ môi trường phát triển nào mà bạn áp dụng.
Tùy thuộc vào nhu cầu của bạn, bất kỳ tùy chọn nào được trình bày có thể là "lựa chọn tốt nhất". Tùy thuộc vào nhu cầu của bạn phát triển theo thời gian như thế nào, một lựa chọn khác có thể được tiết lộ là "tốt nhất".
Cách tiếp cận của tôi đối với vấn đề này là hỏi một vài câu hỏi:
Bạn có thường xuyên thay đổi công cụ phát triển hay không. Bạn đã chuyển sang Python từ Perl. Bạn đã bắt đầu với Tcl và đi đến Perl? Bạn sẽ chuyển sang ngôn ngữ X mới thú vị trong 1, 5 hoặc 10 năm? Nếu bạn thay đổi công cụ 'thường xuyên' (bất cứ điều gì có nghĩa là) nhấn mạnh khả năng tương thích công cụ chéo.
Tốc độ đủ nhanh đến mức nào? Là thời gian khởi động cho các giải pháp dòng lệnh ok? Có Inline :: Python làm chậm quá nhiều thứ (bạn vẫn đang khởi tạo một trình thông dịch Python, nó chỉ được nhúng trong trình thông dịch Perl của bạn)?
Dựa trên câu trả lời cho những câu hỏi này, tôi sẽ làm điều đơn giản nhất có khả năng hoạt động.
tôi đoán là có nghĩa là theo thứ tự:
- Inline :: Python
- dòng lệnh script
- Xây dựng một máy chủ RPC
Inline :: Python hoạt động khá tốt, có thể có một số điểm kỳ lạ khi đi qua một số loại biến nhất định. – GWW
Cảm ơn bạn. Tôi thích tất cả các câu trả lời, nhưng điều này có vẻ rất di động. – Escualo