LINUX.ORG.RU

>Как в emacs реализовано взаимодействие C

Никак. В платформе Elisp нет FFI

...и Lisp?

Напрямую

yoghurt ★★★★★
()
Ответ на: комментарий от yoghurt

Emacs является сам и интерпретатором лиспа?

bk_ ★★
() автор топика

В elisp нету FFI, поэтому все взаимодействие сводится к тому, что есть built-in функции, определенные в сишном коде и доступные интерпретатору. см. http://www.gnu.org/software/emacs/elisp/html_node/Writing-Emacs-Primitives.ht...

В обратную сторону сишный код может вызывать функции funcall, apply, eval, т.к. они тоже определены как сишные функции.

Во «взрослых» лиспах есть FFI, которое можно использовать для того, чтобы указывать определения сишных функций, и чтобы лисп знал, как их вызывать.

dmitry_vk ★★★
()
Ответ на: комментарий от dmitry_vk

>В elisp нету FFI

В некоторых емаксах есть(SXEmacs).

ipc
()

В GNU Emacs 23 есть поддержка D-Bus, можно через него.

Begemoth ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.