From mboxrd@z Thu Jan 1 00:00:00 1970 From: Eric Schulte Subject: Re: [babel] adding a language - problems Date: Thu, 29 Sep 2011 06:48:17 -0600 Message-ID: <871uuzbj8h.fsf@gmail.com> References: <86oby471k3.fsf@googlemail.com> <86k48s6ztv.fsf@googlemail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([140.186.70.92]:50172) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R9GA9-0005h7-Ty for emacs-orgmode@gnu.org; Thu, 29 Sep 2011 08:56:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R9GA4-0000cJ-22 for emacs-orgmode@gnu.org; Thu, 29 Sep 2011 08:56:29 -0400 Received: from mail-yx0-f169.google.com ([209.85.213.169]:33317) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R9GA3-0000c2-Vn for emacs-orgmode@gnu.org; Thu, 29 Sep 2011 08:56:24 -0400 Received: by yxi19 with SMTP id 19so700840yxi.0 for ; Thu, 29 Sep 2011 05:56:23 -0700 (PDT) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Thorsten Cc: emacs-orgmode@gnu.org Thorsten writes: > Thorsten writes: > >> Hi list, >> I'm on my way to add a new (intrpreted) lisp dialect to org-babel, but >> encounter a few difficulties. Here is my little testprogramm: >> >> --------------------- >> #+tblname: tbl1 >> | 1 | 2 | 3 | >> |---+---+---| >> | 4 | 5 | 6 | >> | 7 | 8 | 9 | >> >> >> # external evaluation (no session) >> #+srcname: pico-calc >> #+begin_src picolisp :var tab=tbl1 :results value :hlines no >> (+ (caar tab) (caar (cdr tab))) >> #+end_src >> >> # org-babel-error output: >> [/tmp/babel-22634XBd/picolisp-script-22634K-K:1] !? (display (prog (let >> (tab '((1 2 3) (4 5 6) (7 8 9))) (+ (caar tab) (caar (cdr tab)))))) >> display -- Undefined >> >> >> # with session >> #+srcname: pico-calc >> #+begin_src picolisp :var tab=tbl1 :results value :hlines no :session "p1" >> (+ (caar tab) (caar (cdr tab))) >> #+end_src >> >> #+results: pico-calc >> [finishes with no output] >> >> # session buffer: >> (prog (let (tab '((1 2 3) (4 5 6) (7 8 9))) >> (+ (caar tab) (caar (cdr tab)))) ) >> "org-babel-picolisp-eoe" >> -> 5 >> : -> "org-babel-picolisp-eoe" >> >> --------------- >> >> I do not know where undefined 'display' comes from in the error message >> - seems to be a org-babel internal thing. What can I do about that, >> where do I have to look? >> >> The session evaluation works already, but there is a problem with the >> eoe string. If I don't use it, Emacs hangs forever - waiting for the >> session to return? If I use it, the right value is calculated, but not >> returned - because the eoe string is evaluated after the source-body? >> I assume you're using `org-babel-comint-with-output' to collect results? If you're still having issues I'd suggest looking at some of the other uses of this function in other ob-*.el files for example of ways that it's use can be customized through code in the BODY section. >> >> Thanks for any tips Thorsten > > > Sorry, I encountered the undefined 'display' in source code I copied > from ob-scheme, I deleted it, and then external evaluation succeeded - > but again without output. Hopefully ":results output" is already working and it is just ":results value" which requires more work. "results value" external evaluation generally works by wrapping the body of the code block in a form which will collect the result of the code block and print them to STDOUT. Writing this wrapped body to a temporary file, evaluating this temporary file, and then collecting the results from STDOUT. I'd suggest confirming that each of the above steps are working independently. > > So I seem to be quite close, evaluation work and the right value is > calculated - but not returned yet. > I hope the above helps. Let me know if you run into any more issues. Cheers -- Eric > > cheers > Thorsten > > -- Eric Schulte http://cs.unm.edu/~eschulte/