Browse Source

org-babel-expand-body:ocaml

Eric Schulte 15 years ago
parent
commit
8e9f4eec88
1 changed files with 8 additions and 4 deletions
  1. 8 4
      contrib/babel/lisp/langs/org-babel-ocaml.el

+ 8 - 4
contrib/babel/lisp/langs/org-babel-ocaml.el

@@ -48,15 +48,19 @@
 (defvar org-babel-ocaml-eoe-indicator "\"org-babel-ocaml-eoe\";;")
 (defvar org-babel-ocaml-eoe-output "org-babel-ocaml-eoe")
 
+(defun org-babel-expand-body:ocaml (body params &optional processed-params)
+  (let ((vars (second (or processed-params (org-babel-process-params params)))))
+    (concat
+     (mapconcat
+      (lambda (pair) (format "let %s = %s;" (car pair) (cdr pair)))
+      vars "\n") "\n" body "\n")))
+
 (defun org-babel-execute:ocaml (body params)
   "Execute a block of Ocaml code with org-babel."
   (message "executing ocaml source code block")
   (let* ((processed-params (org-babel-process-params params))
          (vars (second processed-params))
-         (full-body (concat
-                     (mapconcat
-                      (lambda (pair) (format "let %s = %s;" (car pair) (cdr pair)))
-                      vars "\n") "\n" body "\n"))
+         (full-body (org-babel-expand-body:ocaml body params processed-params))
          (session (org-babel-prep-session:ocaml session params))
          (raw (org-babel-comint-with-output session org-babel-ocaml-eoe-output t
                 (insert (concat (org-babel-chomp full-body) " ;;"))