Browse Source

babel:removing calls to ob-process-params, and updating use of results

    * lisp/ob-C.el (org-babel-C-execute): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-R.el (org-babel-execute:R): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
      (org-babel-R-variable-assignments): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-asymptote.el (org-babel-execute:asymptote): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-clojure.el (org-babel-execute:clojure): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-dot.el (org-babel-execute:dot): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-emacs-lisp.el (org-babel-expand-body:emacs-lisp): removing
      call to org-babel-process-params which should no longer be called
      from within a language file
      (org-babel-execute:emacs-lisp): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-haskell.el (org-babel-execute:haskell): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-js.el (org-babel-execute:js): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-lisp.el (org-babel-execute:lisp): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-ocaml.el (org-babel-execute:ocaml): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-octave.el (org-babel-execute:octave): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-perl.el (org-babel-execute:perl): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-python.el (org-babel-execute:python): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-ruby.el (org-babel-execute:ruby): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-scheme.el (org-babel-execute:scheme): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-screen.el (org-babel-execute:screen): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
      (org-babel-prep-session:screen): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-sh.el (org-babel-execute:sh): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * lisp/ob-sql.el (org-babel-execute:sql): removing call to
      org-babel-process-params which should no longer be called from
      within a language file
    * ob-haskell.el (org-babel-execute:haskell): Remove reference
      to processed params
    * ob-clojure.el (org-babel-execute:clojure): Remove reference
      to processed params
    * ob-R.el (org-babel-execute:R): Remove reference to processed
      params
Dan Davison 14 years ago
parent
commit
369cf54146

+ 4 - 5
lisp/ob-C.el

@@ -82,8 +82,7 @@ header arguments (calls `org-babel-C-expand')."
 (defun org-babel-C-execute (body params)
 (defun org-babel-C-execute (body params)
   "This function should only be called by `org-babel-execute:C'
   "This function should only be called by `org-babel-execute:C'
 or `org-babel-execute:c++'."
 or `org-babel-execute:c++'."
-  (let* ((processed-params (org-babel-process-params params))
-         (tmp-src-file (org-babel-temp-file
+  (let* ((tmp-src-file (org-babel-temp-file
 			"C-src-"
 			"C-src-"
 			(cond
 			(cond
 			 ((equal org-babel-c-variant 'c) ".c")
 			 ((equal org-babel-c-variant 'c) ".c")
@@ -106,15 +105,15 @@ or `org-babel-execute:c++'."
 		     (org-babel-process-file-name tmp-src-file)) ""))))
 		     (org-babel-process-file-name tmp-src-file)) ""))))
     ((lambda (results)
     ((lambda (results)
        (org-babel-reassemble-table
        (org-babel-reassemble-table
-	(if (member "vector" (nth 2 processed-params))
+	(if (member "vector" (cdr (assoc :result-params params)))
 	    (let ((tmp-file (org-babel-temp-file "c-")))
 	    (let ((tmp-file (org-babel-temp-file "c-")))
 	      (with-temp-file tmp-file (insert results))
 	      (with-temp-file tmp-file (insert results))
 	      (org-babel-import-elisp-from-file tmp-file))
 	      (org-babel-import-elisp-from-file tmp-file))
 	  (org-babel-read results))
 	  (org-babel-read results))
 	(org-babel-pick-name
 	(org-babel-pick-name
-	 (nth 4 processed-params) (cdr (assoc :colnames params)))
+	 (cdr (assoc :colname-names params)) (cdr (assoc :colnames params)))
 	(org-babel-pick-name
 	(org-babel-pick-name
-	 (nth 5 processed-params) (cdr (assoc :rownames params)))))
+	 (cdr (assoc :rowname-names params)) (cdr (assoc :rownames params)))))
      (org-babel-trim
      (org-babel-trim
        (org-babel-eval
        (org-babel-eval
 	(concat tmp-bin-file (if cmdline (concat " " cmdline) "")) "")))))
 	(concat tmp-bin-file (if cmdline (concat " " cmdline) "")) "")))))

+ 16 - 16
lisp/ob-R.el

@@ -51,7 +51,7 @@
 (defvar org-babel-R-command "R --slave --no-save"
 (defvar org-babel-R-command "R --slave --no-save"
   "Name of command to use for executing R code.")
   "Name of command to use for executing R code.")
 
 
-(defun org-babel-expand-body:R (body params &optional processed-params)
+(defun org-babel-expand-body:R (body params)
   "Expand BODY according to PARAMS, return the expanded body."
   "Expand BODY according to PARAMS, return the expanded body."
   (let (out-file (cdr (assoc :file params)))
   (let (out-file (cdr (assoc :file params)))
     (mapconcat
     (mapconcat
@@ -63,28 +63,29 @@
 	     inside
 	     inside
 	     (list "dev.off()"))
 	     (list "dev.off()"))
 	  inside))
 	  inside))
-      (append (org-babel-variable-assignments:R params processed-params)
+      (append (org-babel-variable-assignments:R params)
 	      (list body))) "\n")))
 	      (list body))) "\n")))
 
 
 (defun org-babel-execute:R (body params)
 (defun org-babel-execute:R (body params)
   "Execute a block of R code.
   "Execute a block of R code.
 This function is called by `org-babel-execute-src-block'."
 This function is called by `org-babel-execute-src-block'."
   (save-excursion
   (save-excursion
-    (let* ((processed-params (org-babel-process-params params))
-           (result-type (nth 3 processed-params))
+    (let* ((result-type (cdr (assoc :result-type params)))
            (session (org-babel-R-initiate-session
            (session (org-babel-R-initiate-session
-		     (first processed-params) params))
+		     (cdr (assoc :session params)) params))
 	   (colnames-p (cdr (assoc :colnames params)))
 	   (colnames-p (cdr (assoc :colnames params)))
 	   (rownames-p (cdr (assoc :rownames params)))
 	   (rownames-p (cdr (assoc :rownames params)))
 	   (out-file (cdr (assoc :file params)))
 	   (out-file (cdr (assoc :file params)))
-	   (full-body (org-babel-expand-body:R body params processed-params))
+	   (full-body (org-babel-expand-body:R body params))
 	   (result
 	   (result
 	    (org-babel-R-evaluate
 	    (org-babel-R-evaluate
 	     session full-body result-type
 	     session full-body result-type
 	     (or (equal "yes" colnames-p)
 	     (or (equal "yes" colnames-p)
-		 (org-babel-pick-name (nth 4 processed-params) colnames-p))
+		 (org-babel-pick-name
+		  (cdr (assoc :colname-names params)) colnames-p))
 	     (or (equal "yes" rownames-p)
 	     (or (equal "yes" rownames-p)
-		 (org-babel-pick-name (nth 5 processed-params) rownames-p)))))
+		 (org-babel-pick-name
+		  (cdr (assoc :rowname-names params)) rownames-p)))))
       (message "result is %S" result)
       (message "result is %S" result)
       (or out-file result))))
       (or out-file result))))
 
 
@@ -109,10 +110,9 @@ This function is called by `org-babel-execute-src-block'."
 
 
 ;; helper functions
 ;; helper functions
 
 
-(defun org-babel-variable-assignments:R (params &optional processed-params)
+(defun org-babel-variable-assignments:R (params)
   "Return list of R statements assigning the block's variables"
   "Return list of R statements assigning the block's variables"
-  (let ((processed-params
-	 (or processed-params (org-babel-process-params params))))
+  (let ((vars (mapcar #'cdr (org-babel-get-header params :var))))
     (mapcar
     (mapcar
      (lambda (pair)
      (lambda (pair)
        (org-babel-R-assign-elisp
        (org-babel-R-assign-elisp
@@ -121,12 +121,12 @@ This function is called by `org-babel-execute-src-block'."
 	(equal "yes" (cdr (assoc :rownames params)))))
 	(equal "yes" (cdr (assoc :rownames params)))))
      (mapcar
      (mapcar
       (lambda (i)
       (lambda (i)
-	(cons (car (nth i (nth 1 processed-params)))
+	(cons (car (nth i vars))
 	      (org-babel-reassemble-table
 	      (org-babel-reassemble-table
-	       (cdr (nth i (nth 1 processed-params)))
-	       (cdr (nth i (nth 4 processed-params)))
-	       (cdr (nth i (nth 5 processed-params))))))
-      (org-number-sequence 0 (1- (length (nth 1 processed-params))))))))
+	       (cdr (nth i vars))
+	       (cdr (nth i (cdr (assoc :colname-names params))))
+	       (cdr (nth i (cdr (assoc :rowname-names params)))))))
+      (org-number-sequence 0 (1- (length vars)))))))
 
 
 (defun org-babel-R-quote-tsv-field (s)
 (defun org-babel-R-quote-tsv-field (s)
   "Quote field S for export to R."
   "Quote field S for export to R."

+ 1 - 2
lisp/ob-asymptote.el

@@ -58,8 +58,7 @@
 (defun org-babel-execute:asymptote (body params)
 (defun org-babel-execute:asymptote (body params)
   "Execute a block of Asymptote code.
   "Execute a block of Asymptote code.
 This function is called by `org-babel-execute-src-block'."
 This function is called by `org-babel-execute-src-block'."
-  (let* ((processed-params (org-babel-process-params params))
-         (result-params (split-string (or (cdr (assoc :results params)) "")))
+  (let* ((result-params (split-string (or (cdr (assoc :results params)) "")))
          (out-file (cdr (assoc :file params)))
          (out-file (cdr (assoc :file params)))
          (format (or (and out-file
          (format (or (and out-file
                           (string-match ".+\\.\\(.+\\)" out-file)
                           (string-match ".+\\.\\(.+\\)" out-file)

+ 5 - 6
lisp/ob-clojure.el

@@ -301,16 +301,15 @@ return the value of the last statement in BODY as elisp."
 (defun org-babel-execute:clojure (body params)
 (defun org-babel-execute:clojure (body params)
   "Execute a block of Clojure code."
   "Execute a block of Clojure code."
   (require 'slime) (require 'swank-clojure)
   (require 'slime) (require 'swank-clojure)
-  (let* ((processed-params (org-babel-process-params params))
-         (body (org-babel-expand-body:clojure body params))
+  (let* ((body (org-babel-expand-body:clojure body params))
          (session (org-babel-clojure-initiate-session
          (session (org-babel-clojure-initiate-session
-		   (first processed-params))))
+		   (cdr (assoc :session params)))))
     (org-babel-reassemble-table
     (org-babel-reassemble-table
-     (org-babel-clojure-evaluate session body (nth 3 processed-params))
+     (org-babel-clojure-evaluate session body (cdr (assoc :result-type params)))
      (org-babel-pick-name
      (org-babel-pick-name
-      (nth 4 processed-params) (cdr (assoc :colnames params)))
+      (cdr (assoc :colname-names params)) (cdr (assoc :colnames params)))
      (org-babel-pick-name
      (org-babel-pick-name
-      (nth 5 processed-params) (cdr (assoc :rownames params))))))
+      (cdr (assoc :rowname-names params)) (cdr (assoc :rownames params))))))
 
 
 (provide 'ob-clojure)
 (provide 'ob-clojure)
 
 

+ 1 - 2
lisp/ob-dot.el

@@ -64,8 +64,7 @@
 (defun org-babel-execute:dot (body params)
 (defun org-babel-execute:dot (body params)
   "Execute a block of Dot code with org-babel.
   "Execute a block of Dot code with org-babel.
 This function is called by `org-babel-execute-src-block'."
 This function is called by `org-babel-execute-src-block'."
-  (let* ((processed-params (org-babel-process-params params))
-	 (result-params (split-string (or (cdr (assoc :results params)) "")))
+  (let* ((result-params (cdr (assoc :result-params params)))
 	 (out-file (cdr (assoc :file params)))
 	 (out-file (cdr (assoc :file params)))
 	 (cmdline (or (cdr (assoc :cmdline params))
 	 (cmdline (or (cdr (assoc :cmdline params))
 		      (format "-T%s" (file-name-extension out-file))))
 		      (format "-T%s" (file-name-extension out-file))))

+ 9 - 11
lisp/ob-emacs-lisp.el

@@ -38,9 +38,8 @@
 
 
 (defun org-babel-expand-body:emacs-lisp (body params)
 (defun org-babel-expand-body:emacs-lisp (body params)
   "Expand BODY according to PARAMS, return the expanded body."
   "Expand BODY according to PARAMS, return the expanded body."
-  (let* ((processed-params (org-babel-process-params params))
-         (vars (nth 1 processed-params))
-         (result-params (nth 2 processed-params))
+  (let* ((vars (mapcar #'cdr (org-babel-get-header params :var)))
+         (result-params (cdr (assoc :result-params params)))
          (print-level nil) (print-length nil)
          (print-level nil) (print-length nil)
          (body (if (> (length vars) 0)
          (body (if (> (length vars) 0)
 		   (concat "(let ("
 		   (concat "(let ("
@@ -57,14 +56,13 @@
 (defun org-babel-execute:emacs-lisp (body params)
 (defun org-babel-execute:emacs-lisp (body params)
   "Execute a block of emacs-lisp code with Babel."
   "Execute a block of emacs-lisp code with Babel."
   (save-window-excursion
   (save-window-excursion
-    (let ((processed-params (org-babel-process-params params)))
-      (org-babel-reassemble-table
-       (eval (read (format "(progn %s)"
-			   (org-babel-expand-body:emacs-lisp body params))))
-       (org-babel-pick-name (nth 4 processed-params)
-			    (cdr (assoc :colnames params)))
-       (org-babel-pick-name (nth 5 processed-params)
-			    (cdr (assoc :rownames params)))))))
+    (org-babel-reassemble-table
+     (eval (read (format "(progn %s)"
+			 (org-babel-expand-body:emacs-lisp body params))))
+     (org-babel-pick-name (cdr (assoc :colname-names params))
+			  (cdr (assoc :colnames params)))
+       (org-babel-pick-name (cdr (assoc :rowname-names params))
+			    (cdr (assoc :rownames params))))))
 
 
 (provide 'ob-emacs-lisp)
 (provide 'ob-emacs-lisp)
 
 

+ 7 - 8
lisp/ob-haskell.el

@@ -61,10 +61,9 @@
 
 
 (defun org-babel-execute:haskell (body params)
 (defun org-babel-execute:haskell (body params)
   "Execute a block of Haskell code."
   "Execute a block of Haskell code."
-  (let* ((processed-params (org-babel-process-params params))
-         (session (nth 0 processed-params))
-         (vars (nth 1 processed-params))
-         (result-type (nth 3 processed-params))
+  (let* ((session (cdr (assoc :session params)))
+         (vars (mapcar #'cdr (org-babel-get-header params :var)))
+         (result-type (cdr (assoc :result-type params)))
          (full-body (org-babel-expand-body:generic
          (full-body (org-babel-expand-body:generic
 		     body params
 		     body params
 		     (org-babel-variable-assignments:haskell params)))
 		     (org-babel-variable-assignments:haskell params)))
@@ -85,10 +84,10 @@
        (mapconcat #'identity (reverse (cdr results)) "\n"))
        (mapconcat #'identity (reverse (cdr results)) "\n"))
       ((equal result-type 'value)
       ((equal result-type 'value)
        (org-babel-haskell-table-or-string (car results))))
        (org-babel-haskell-table-or-string (car results))))
-     (org-babel-pick-name (nth 4 processed-params)
-			  (cdr (assoc :colnames params)))
-     (org-babel-pick-name (nth 5 processed-params)
-			  (cdr (assoc :rownames params))))))
+     (org-babel-pick-name (cdr (assoc :colname-names params))
+			  (cdr (assoc :colname-names params)))
+     (org-babel-pick-name (cdr (assoc :rowname-names params))
+			  (cdr (assoc :rowname-names params))))))
 
 
 (defun org-babel-haskell-read-string (string)
 (defun org-babel-haskell-read-string (string)
   "Strip \\\"s from around a haskell string."
   "Strip \\\"s from around a haskell string."

+ 4 - 5
lisp/ob-js.el

@@ -67,16 +67,15 @@
 (defun org-babel-execute:js (body params)
 (defun org-babel-execute:js (body params)
   "Execute a block of Javascript code with org-babel.
   "Execute a block of Javascript code with org-babel.
 This function is called by `org-babel-execute-src-block'"
 This function is called by `org-babel-execute-src-block'"
-  (let* ((processed-params (org-babel-process-params params))
-	 (org-babel-js-cmd (or (cdr (assoc :cmd params)) org-babel-js-cmd))
-         (result-type (nth 3 processed-params))
+  (let* ((org-babel-js-cmd (or (cdr (assoc :cmd params)) org-babel-js-cmd))
+         (result-type (cdr (assoc :result-type params)))
          (full-body (org-babel-expand-body:generic
          (full-body (org-babel-expand-body:generic
 		     body params (org-babel-variable-assignments:js params))))
 		     body params (org-babel-variable-assignments:js params))))
     (org-babel-js-read
     (org-babel-js-read
-     (if (not (string= (nth 0 processed-params) "none"))
+     (if (not (string= (cdr (assoc :session params)) "none"))
 	 ;; session evaluation
 	 ;; session evaluation
          (let ((session (org-babel-prep-session:js
          (let ((session (org-babel-prep-session:js
-			 (nth 0 processed-params) params)))
+			 (cdr (assoc :session params)) params)))
 	   (nth 1
 	   (nth 1
 		(org-babel-comint-with-output
 		(org-babel-comint-with-output
 		    (session (format "%S" org-babel-js-eoe) t body)
 		    (session (format "%S" org-babel-js-eoe) t body)

+ 3 - 3
lisp/ob-lisp.el

@@ -64,9 +64,9 @@
   "Execute a block of Lisp code with org-babel.
   "Execute a block of Lisp code with org-babel.
 This function is called by `org-babel-execute-src-block'"
 This function is called by `org-babel-execute-src-block'"
   (message "executing Lisp source code block")
   (message "executing Lisp source code block")
-  (let* ((processed-params (org-babel-process-params params))
-         (session (org-babel-lisp-initiate-session (first processed-params)))
-         (result-type (fourth processed-params))
+  (let* ((session (org-babel-lisp-initiate-session
+		   (cdr (assoc :session params))))
+         (result-type (cdr (assoc :result-type params)))
          (full-body (org-babel-expand-body:lisp body params)))
          (full-body (org-babel-expand-body:lisp body params)))
     (read
     (read
      (if session
      (if session

+ 3 - 4
lisp/ob-ocaml.el

@@ -53,8 +53,7 @@
 
 
 (defun org-babel-execute:ocaml (body params)
 (defun org-babel-execute:ocaml (body params)
   "Execute a block of Ocaml code with Babel."
   "Execute a block of Ocaml code with Babel."
-  (let* ((processed-params (org-babel-process-params params))
-         (vars (nth 1 processed-params))
+  (let* ((vars (mapcar #'cdr (org-babel-get-header params :var)))
          (full-body (org-babel-expand-body:generic
          (full-body (org-babel-expand-body:generic
 		     body params
 		     body params
 		     (org-babel-variable-assignments:ocaml params)))
 		     (org-babel-variable-assignments:ocaml params)))
@@ -77,9 +76,9 @@
     (org-babel-reassemble-table
     (org-babel-reassemble-table
      (org-babel-ocaml-parse-output (org-babel-trim clean))
      (org-babel-ocaml-parse-output (org-babel-trim clean))
      (org-babel-pick-name
      (org-babel-pick-name
-      (nth 4 processed-params) (cdr (assoc :colnames params)))
+      (cdr (assoc :colname-names params)) (cdr (assoc :colnames params)))
      (org-babel-pick-name
      (org-babel-pick-name
-      (nth 5 processed-params) (cdr (assoc :rownames params))))))
+      (cdr (assoc :rowname-names params)) (cdr (assoc :rownames params))))))
 
 
 (defvar tuareg-interactive-buffer-name)
 (defvar tuareg-interactive-buffer-name)
 (defun org-babel-prep-session:ocaml (session params)
 (defun org-babel-prep-session:ocaml (session params)

+ 7 - 8
lisp/ob-octave.el

@@ -75,14 +75,13 @@ end")
 
 
 (defun org-babel-execute:octave (body params &optional matlabp)
 (defun org-babel-execute:octave (body params &optional matlabp)
   "Execute a block of octave code with Babel."
   "Execute a block of octave code with Babel."
-  (let* ((processed-params (org-babel-process-params params))
-         (session
+  (let* ((session
 	  (funcall (intern (format "org-babel-%s-initiate-session"
 	  (funcall (intern (format "org-babel-%s-initiate-session"
 				   (if matlabp "matlab" "octave")))
 				   (if matlabp "matlab" "octave")))
-		   (nth 0 processed-params) params))
-         (vars (nth 1 processed-params))
-         (result-params (nth 2 processed-params))
-         (result-type (nth 3 processed-params))
+		   (cdr (assoc :session params)) params))
+         (vars (mapcar #'cdr (org-babel-get-header params :var)))
+         (result-params (cdr (assoc :result-params params)))
+         (result-type (cdr (assoc :result-type params)))
 	 (out-file (cdr (assoc :file params)))
 	 (out-file (cdr (assoc :file params)))
 	 (full-body
 	 (full-body
 	  (org-babel-expand-body:generic
 	  (org-babel-expand-body:generic
@@ -93,9 +92,9 @@ end")
         (org-babel-reassemble-table
         (org-babel-reassemble-table
          result
          result
          (org-babel-pick-name
          (org-babel-pick-name
-	  (nth 4 processed-params) (cdr (assoc :colnames params)))
+	  (cdr (assoc :colname-names params)) (cdr (assoc :colnames params)))
          (org-babel-pick-name
          (org-babel-pick-name
-	  (nth 5 processed-params) (cdr (assoc :rownames params)))))))
+	  (cdr (assoc :rowname-names params)) (cdr (assoc :rownames params)))))))
 
 
 (defun org-babel-prep-session:matlab (session params)
 (defun org-babel-prep-session:matlab (session params)
   "Prepare SESSION according to PARAMS."
   "Prepare SESSION according to PARAMS."

+ 5 - 7
lisp/ob-perl.el

@@ -41,20 +41,18 @@
 (defun org-babel-execute:perl (body params)
 (defun org-babel-execute:perl (body params)
   "Execute a block of Perl code with Babel.
   "Execute a block of Perl code with Babel.
 This function is called by `org-babel-execute-src-block'."
 This function is called by `org-babel-execute-src-block'."
-  (let* ((processed-params (org-babel-process-params params))
-         (session (nth 0 processed-params))
-         (vars (nth 1 processed-params))
-         (result-params (nth 2 processed-params))
-         (result-type (nth 3 processed-params))
+  (let* ((session (cdr (assoc :session params)))
+         (result-params (cdr (assoc :result-params params)))
+         (result-type (cdr (assoc :result-type params)))
          (full-body (org-babel-expand-body:generic
          (full-body (org-babel-expand-body:generic
 		     body params (org-babel-variable-assignments:perl params)))
 		     body params (org-babel-variable-assignments:perl params)))
 	(session (org-babel-perl-initiate-session session)))
 	(session (org-babel-perl-initiate-session session)))
     (org-babel-reassemble-table
     (org-babel-reassemble-table
      (org-babel-perl-evaluate session full-body result-type)
      (org-babel-perl-evaluate session full-body result-type)
      (org-babel-pick-name
      (org-babel-pick-name
-      (nth 4 processed-params) (cdr (assoc :colnames params)))
+      (cdr (assoc :colname-names params)) (cdr (assoc :colnames params)))
      (org-babel-pick-name
      (org-babel-pick-name
-      (nth 5 processed-params) (cdr (assoc :rownames params))))))
+      (cdr (assoc :rowname-names params)) (cdr (assoc :rownames params))))))
 
 
 (defun org-babel-prep-session:perl (session params)
 (defun org-babel-prep-session:perl (session params)
   "Prepare SESSION according to the header arguments in PARAMS."
   "Prepare SESSION according to the header arguments in PARAMS."

+ 6 - 6
lisp/ob-python.el

@@ -52,10 +52,10 @@
 (defun org-babel-execute:python (body params)
 (defun org-babel-execute:python (body params)
   "Execute a block of Python code with Babel.
   "Execute a block of Python code with Babel.
 This function is called by `org-babel-execute-src-block'."
 This function is called by `org-babel-execute-src-block'."
-  (let* ((processed-params (org-babel-process-params params))
-         (session (org-babel-python-initiate-session (first processed-params)))
-         (result-params (nth 2 processed-params))
-         (result-type (nth 3 processed-params))
+  (let* ((session (org-babel-python-initiate-session
+		   (cdr (assoc :session params))))
+         (result-params (cdr (assoc :result-params params)))
+         (result-type (cdr (assoc :result-type params)))
          (full-body
          (full-body
 	  (org-babel-expand-body:generic
 	  (org-babel-expand-body:generic
 	   body params (org-babel-variable-assignments:python params)))
 	   body params (org-babel-variable-assignments:python params)))
@@ -64,9 +64,9 @@ This function is called by `org-babel-execute-src-block'."
     (or (cdr (assoc :file params))
     (or (cdr (assoc :file params))
         (org-babel-reassemble-table
         (org-babel-reassemble-table
          result
          result
-         (org-babel-pick-name (nth 4 processed-params)
+         (org-babel-pick-name (cdr (assoc :colname-names params))
 			      (cdr (assoc :colnames params)))
 			      (cdr (assoc :colnames params)))
-         (org-babel-pick-name (nth 5 processed-params)
+         (org-babel-pick-name (cdr (assoc :rowname-names params))
 			      (cdr (assoc :rownames params)))))))
 			      (cdr (assoc :rownames params)))))))
 
 
 (defun org-babel-prep-session:python (session params)
 (defun org-babel-prep-session:python (session params)

+ 6 - 6
lisp/ob-ruby.el

@@ -55,10 +55,10 @@
 (defun org-babel-execute:ruby (body params)
 (defun org-babel-execute:ruby (body params)
   "Execute a block of Ruby code with Babel.
   "Execute a block of Ruby code with Babel.
 This function is called by `org-babel-execute-src-block'."
 This function is called by `org-babel-execute-src-block'."
-  (let* ((processed-params (org-babel-process-params params))
-         (session (org-babel-ruby-initiate-session (first processed-params)))
-         (result-params (nth 2 processed-params))
-         (result-type (nth 3 processed-params))
+  (let* ((session (org-babel-ruby-initiate-session
+		   (cdr (assoc :session params))))
+         (result-params (cdr (assoc :result-params params)))
+         (result-type (cdr (assoc :result-type params)))
          (full-body (org-babel-expand-body:generic
          (full-body (org-babel-expand-body:generic
 		     body params (org-babel-variable-assignments:ruby params)))
 		     body params (org-babel-variable-assignments:ruby params)))
          (result (org-babel-ruby-evaluate
          (result (org-babel-ruby-evaluate
@@ -66,9 +66,9 @@ This function is called by `org-babel-execute-src-block'."
     (or (cdr (assoc :file params))
     (or (cdr (assoc :file params))
         (org-babel-reassemble-table
         (org-babel-reassemble-table
          result
          result
-         (org-babel-pick-name (nth 4 processed-params)
+         (org-babel-pick-name (cdr (assoc :colname-names params))
 			      (cdr (assoc :colnames params)))
 			      (cdr (assoc :colnames params)))
-         (org-babel-pick-name (nth 5 processed-params)
+         (org-babel-pick-name (cdr (assoc :rowname-names params))
 			      (cdr (assoc :rownames params)))))))
 			      (cdr (assoc :rownames params)))))))
 
 
 (defun org-babel-prep-session:ruby (session params)
 (defun org-babel-prep-session:ruby (session params)

+ 3 - 4
lisp/ob-scheme.el

@@ -74,16 +74,15 @@
 (defun org-babel-execute:scheme (body params)
 (defun org-babel-execute:scheme (body params)
   "Execute a block of Scheme code with org-babel.
   "Execute a block of Scheme code with org-babel.
 This function is called by `org-babel-execute-src-block'"
 This function is called by `org-babel-execute-src-block'"
-  (let* ((processed-params (org-babel-process-params params))
-         (result-type (nth 3 processed-params))
+  (let* ((result-type (cdr (assoc :result-type params)))
 	 (org-babel-scheme-cmd (or (cdr (assoc :scheme params))
 	 (org-babel-scheme-cmd (or (cdr (assoc :scheme params))
 				   org-babel-scheme-cmd))
 				   org-babel-scheme-cmd))
          (full-body (org-babel-expand-body:scheme body params)))
          (full-body (org-babel-expand-body:scheme body params)))
     (read
     (read
-     (if (not (string= (nth 0 processed-params) "none"))
+     (if (not (string= (cdr (assoc :session params)) "none"))
          ;; session evaluation
          ;; session evaluation
 	 (let ((session (org-babel-prep-session:scheme
 	 (let ((session (org-babel-prep-session:scheme
-			 (nth 0 processed-params) params)))
+			 (cdr (assoc :session params)) params)))
 	   (org-babel-comint-with-output
 	   (org-babel-comint-with-output
 	       (session (format "%S" org-babel-scheme-eoe) t body)
 	       (session (format "%S" org-babel-scheme-eoe) t body)
 	     (mapc
 	     (mapc

+ 2 - 4
lisp/ob-screen.el

@@ -50,8 +50,7 @@ In case you want to use a different screen than one selected by your $PATH")
 \"default\" session is used when none is specified."
 \"default\" session is used when none is specified."
   (message "Sending source code block to interactive terminal session...")
   (message "Sending source code block to interactive terminal session...")
   (save-window-excursion
   (save-window-excursion
-    (let* ((processed-params (org-babel-process-params params))
-           (session (nth 0 processed-params))
+    (let* ((session (cdr (assoc :session params)))
            (socket (org-babel-screen-session-socketname session)))
            (socket (org-babel-screen-session-socketname session)))
       (unless socket (org-babel-prep-session:screen session params))
       (unless socket (org-babel-prep-session:screen session params))
       (org-babel-screen-session-execute-string
       (org-babel-screen-session-execute-string
@@ -59,8 +58,7 @@ In case you want to use a different screen than one selected by your $PATH")
 
 
 (defun org-babel-prep-session:screen (session params)
 (defun org-babel-prep-session:screen (session params)
   "Prepare SESSION according to the header arguments specified in PARAMS."
   "Prepare SESSION according to the header arguments specified in PARAMS."
-  (let* ((processed-params (org-babel-process-params params))
-         (session (nth 0 processed-params))
+  (let* ((session (cdr (assoc :session params)))
          (socket (org-babel-screen-session-socketname session))
          (socket (org-babel-screen-session-socketname session))
          (cmd (cdr (assoc :cmd params)))
          (cmd (cdr (assoc :cmd params)))
          (terminal (cdr (assoc :terminal params)))
          (terminal (cdr (assoc :terminal params)))

+ 5 - 5
lisp/ob-sh.el

@@ -48,17 +48,17 @@ This will be passed to  `shell-command-on-region'")
 (defun org-babel-execute:sh (body params)
 (defun org-babel-execute:sh (body params)
   "Execute a block of Shell commands with Babel.
   "Execute a block of Shell commands with Babel.
 This function is called by `org-babel-execute-src-block'."
 This function is called by `org-babel-execute-src-block'."
-  (let* ((processed-params (org-babel-process-params params))
-         (session (org-babel-sh-initiate-session (nth 0 processed-params)))
-         (result-params (nth 2 processed-params)) 
+  (let* ((session (org-babel-sh-initiate-session
+		   (cdr (assoc :session params))))
+         (result-params (cdr (assoc :result-params params))) 
          (full-body (org-babel-expand-body:generic
          (full-body (org-babel-expand-body:generic
 		     body params (org-babel-variable-assignments:sh params))))
 		     body params (org-babel-variable-assignments:sh params))))
     (org-babel-reassemble-table
     (org-babel-reassemble-table
      (org-babel-sh-evaluate session full-body result-params)
      (org-babel-sh-evaluate session full-body result-params)
      (org-babel-pick-name
      (org-babel-pick-name
-      (nth 4 processed-params) (cdr (assoc :colnames params)))
+      (cdr (assoc :colname-names params)) (cdr (assoc :colnames params)))
      (org-babel-pick-name
      (org-babel-pick-name
-      (nth 5 processed-params) (cdr (assoc :rownames params))))))
+      (cdr (assoc :rowname-names params)) (cdr (assoc :rownames params))))))
 
 
 (defun org-babel-prep-session:sh (session params)
 (defun org-babel-prep-session:sh (session params)
   "Prepare SESSION according to the header arguments specified in PARAMS."
   "Prepare SESSION according to the header arguments specified in PARAMS."

+ 5 - 4
lisp/ob-sql.el

@@ -53,8 +53,7 @@
 (defun org-babel-execute:sql (body params)
 (defun org-babel-execute:sql (body params)
   "Execute a block of Sql code with Babel.
   "Execute a block of Sql code with Babel.
 This function is called by `org-babel-execute-src-block'."
 This function is called by `org-babel-execute-src-block'."
-  (let* ((result-params (split-string (or (cdr (assoc :results params)) "")))
-	 (processed-params (org-babel-process-params params))
+  (let* ((result-params (cdr (assoc :result-params params)))
          (cmdline (cdr (assoc :cmdline params)))
          (cmdline (cdr (assoc :cmdline params)))
          (engine (cdr (assoc :engine params)))
          (engine (cdr (assoc :engine params)))
          (in-file (org-babel-temp-file "sql-in-"))
          (in-file (org-babel-temp-file "sql-in-"))
@@ -78,8 +77,10 @@ This function is called by `org-babel-execute-src-block'."
       (org-table-import out-file nil)
       (org-table-import out-file nil)
       (org-babel-reassemble-table
       (org-babel-reassemble-table
        (org-table-to-lisp)
        (org-table-to-lisp)
-       (org-babel-pick-name (nth 4 processed-params) (cdr (assoc :colnames params)))
-       (org-babel-pick-name (nth 5 processed-params) (cdr (assoc :rownames params)))))))
+       (org-babel-pick-name (cdr (assoc :colname-names params))
+			    (cdr (assoc :colnames params)))
+       (org-babel-pick-name (cdr (assoc :rowname-names params))
+			    (cdr (assoc :rownames params)))))))
 
 
 
 
 (defun org-babel-prep-session:sql (session params)
 (defun org-babel-prep-session:sql (session params)