emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Orgmode] Re: Problem whit with code evaluation


From: Dan Davison
Subject: [Orgmode] Re: Problem whit with code evaluation
Date: Wed, 18 Aug 2010 22:37:10 -0400
User-agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.2 (gnu/linux)

Hi Marco,

"Blanchette, Marco" <address@hidden> writes:

> Sorry again if this is common knowledge, but the road to orgmode power user
> is seeded with challenges!
>
> I am trying to write an R function that would take 3 arguments, hopefully
> set up in an org table and have a function run every rows, taking every
> column as arguments to produce a set of report files... But I am going a bit
> ahead of myself as I am stuck quite early in the development...
>
> My problem is quite basic. For some reason, I canĀ¹t seems to be able to
> execute the following lines in the org buffer using org-babel-execute-buffer
> or to export an html of the files. The code block just don't execute and
> return errors.
>
> * Examples take from
> [[http://orgmode.org/worg/org-contrib/babel/intro.php#sec-7]]
>
> * The python example
> #+source: square(x)
> #+begin_src python
> x*x
> #+end_src

This one's our fault. That should be
#+begin_src python
return x*x
#+end_src

I've changed it on Worg.

> #+call: square(x=6)
>
> * The elisp example of the fibonacci series using a table as argument
>
> #+tblname: fibonacci-inputs
> | 1 | 2 | 3 | 4 |  5 |  6 |  7 |  8 |  9 | 10 |
> | 2 | 4 | 6 | 8 | 10 | 12 | 14 | 16 | 18 | 20 |
>
> #+srcname: fibonacci-seq(fib-inputs=fibonacci-inputs)
> #+begin_src emacs-lisp
>   (defun fibonacci (n)
>     (if (or (= n 0) (= n 1))
>         n
>       (+ (fibonacci (- n 1)) (fibonacci (- n 2)))))
>   
>   (mapcar (lambda (row)
>             (mapcar #'fibonacci row)) fib-inputs)
> #+end_src

OK, that works for me.

>
> * Then my own trial in R
> #+srcname: test(x y)
                   ^
missing comma

> #+begin_src R
>    p <- x*y
> #+end_src
>
> #+call test(x=4 y=9)
        ^        ^

missing colon, and missing comma

> #+function test(x=3 y=8)

That's not correct usage of #+function; you wanted #+lob: / #+call:
there.

There are two sets of synonymous terms. *Within* each of these sets, the
terms are synonymous:

{#+function,#+source,#+srcname}
{#+lob,#+call}

My edited version of your input is below.

Hope that helps, do get back to the list if you have further questions.

Dan


--8<---------------cut here---------------start------------->8---
* Examples take from
[[http://orgmode.org/worg/org-contrib/babel/intro.php#sec-7]]

* The python example
#+source: square(x)
#+begin_src python
return x*x
#+end_src

#+call: square(x=6)

#+results: square(x=6)
: 36

* The elisp example of the fibonacci series using a table as argument

#+tblname: fibonacci-inputs
| 1 | 2 | 3 | 4 |  5 |  6 |  7 |  8 |  9 | 10 |
| 2 | 4 | 6 | 8 | 10 | 12 | 14 | 16 | 18 | 20 |

#+srcname: fibonacci-seq(fib-inputs=fibonacci-inputs)
#+begin_src emacs-lisp
  (defun fibonacci (n)
    (if (or (= n 0) (= n 1))
        n
      (+ (fibonacci (- n 1)) (fibonacci (- n 2)))))
  
  (mapcar (lambda (row)
            (mapcar #'fibonacci row)) fib-inputs)
#+end_src

#+results: fibonacci-seq
| 1 | 1 | 2 |  3 |  5 |   8 |  13 |  21 |   34 |   55 |
| 1 | 3 | 8 | 21 | 55 | 144 | 377 | 987 | 2584 | 6765 |

* Then my own trial in R
#+srcname: test(x, y)
#+begin_src R
   p <- x*y
#+end_src

#+call: test(x=4, y=9)

#+results: test(x=4, y=9)
: 36

#+lob: test(x=3, y=8)

#+results: test(x=3, y=8)
: 24
--8<---------------cut here---------------end--------------->8---

>
> Is there something I am missing?
>
> My current setup is:
> GNU Emacs 23.1.50.1
> org-mode (v7.01g)
> R v2.11.1
> XServer running Snow Leopard Server 10.6.4
>
> Thanks for the help



reply via email to

[Prev in Thread] Current Thread [Next in Thread]