summaryrefslogtreecommitdiff
path: root/elisp/geiser-plt.el
diff options
context:
space:
mode:
authorJose Antonio Ortega Ruiz <jao@gnu.org>2009-09-22 22:43:28 +0200
committerJose Antonio Ortega Ruiz <jao@gnu.org>2009-09-22 22:43:28 +0200
commit5f64d69c0e8c100c5a9954a0b1317d9d345a78e2 (patch)
tree46fdfde9f3ea107b49c7555886eca68301f13553 /elisp/geiser-plt.el
parentaecb2b8a0debdfd29e6865c2f4854b37210d9160 (diff)
downloadgeiser-5f64d69c0e8c100c5a9954a0b1317d9d345a78e2.tar.gz
geiser-5f64d69c0e8c100c5a9954a0b1317d9d345a78e2.tar.bz2
New implementation registration mechanism, for the elisp side of things.
Implementations must invoke define-geiser-implementation with an appropriate set of methods. Simple inheritance is supported. Each geiser module defines and registers the method names it uses.
Diffstat (limited to 'elisp/geiser-plt.el')
-rw-r--r--elisp/geiser-plt.el15
1 files changed, 15 insertions, 0 deletions
diff --git a/elisp/geiser-plt.el b/elisp/geiser-plt.el
index 86073e5..aadca41 100644
--- a/elisp/geiser-plt.el
+++ b/elisp/geiser-plt.el
@@ -161,5 +161,20 @@ This function uses `geiser-plt-init-file' if it exists."
(string-equal (file-name-extension (or (buffer-file-name) "")) "ss")))
+;;; Implementation definition:
+
+(define-geiser-implementation plt
+ (binary geiser-plt-binary)
+ (arglist geiser-plt-parameters)
+ (startup)
+ (prompt-regexp geiser-plt-prompt-regexp)
+ (marshall-procedure geiser-plt-geiser-procedure)
+ (find-module geiser-plt-get-module)
+ (find-symbol-begin geiser-plt-symbol-begin)
+ (display-error geiser-plt-display-error)
+ (display-help geiser-plt-external-help)
+ (check-buffer geiser-plt-guess))
+
+
(provide 'geiser-plt)
;;; geiser-plt.el ends here