Tôi muốn lấy một ứng dụng hiện có (được viết bằng OCaml) và tạo một giao diện "Emac" cho nó (ví dụ như chế độ GDB Emacs). Tôi muốn làm điều này mà không cần viết một tấn mã Lisp. Trong các điều khoản MVC, tôi muốn cho View là Emacs, nhưng đối với Model và Controller vẫn giữ nguyên (chủ yếu) OCaml.Viết phần mở rộng Emacs bằng các ngôn ngữ khác ngoài Lisp
Có ai biết cách viết các phần mở rộng Emacs bằng ngôn ngữ khác ngoài ngôn ngữ Lisp không? Điều này có thể có dạng liên kết với API mở rộng Emacs bằng một số ngôn ngữ khác (ví dụ: làm OCaml là ngôn ngữ mở rộng Emacs hạng nhất) hoặc chế độ tương tác Emacs, ví dụ, phần mở rộng có một đường ống mà nó có thể viết Biểu thức Emacs Lisp và đọc các giá trị kết quả.
Tôi khuyên bạn nên xem cách hoạt động của merlin, như được đề xuất bởi Erik Allik, ví dụ: https://github.com/the-lambda-church/merlin/blob/master/emacs/merlin.el#L430 bắt đầu quy trình và https://github.com/the-lambda-church/merlin/blob/ master/emacs/merlin.el # L631 gửi một lệnh đến tiến trình meram ocaml, với một trình xử lý async. – unhammer