emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] [babel] adding a language - problems


From: Eric Schulte
Subject: Re: [O] [babel] adding a language - problems
Date: Thu, 29 Sep 2011 06:48:17 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

Thorsten <address@hidden> writes:

> Thorsten <address@hidden> 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/



reply via email to

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