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
commitac2066b6f439b2497e761fbd99c9675db0b03bbd (patch)
tree0370d7256ca125510dba4b5912220a7d064fb702 /elisp/geiser-plt.el
parent8588781981a686dbd921c377fa9887bcd74728af (diff)
downloadgeiser-chez-ac2066b6f439b2497e761fbd99c9675db0b03bbd.tar.gz
geiser-chez-ac2066b6f439b2497e761fbd99c9675db0b03bbd.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