Hi Andrea,

Andrea Crotti <andrea.crott...@gmail.com> writes:

> I wanted to use sessions in python to do some nice literate programming
> and splitting functions, but it doesn't work as expected.
>
> Here below a very simple example in python and ruby, where in ruby
> everything seems to work well while in python it doesn't...
> And by the way, what is that org_babel_python_eoe? I can't find it
> documented anywhere in the manual...
>

This string is used by Babel to indicate when to stop waiting for output
form the interactive python process and return control to the user.

>
> I've read some time ago that python support for babel was a bit tricky,
> are there workarounds to make it work anyway?
>

This is true, in addition to being a language which is dependent upon
whitespace characters, python has been tricky due to the many
independent inferior python modes (python.el, python-mode.el, etc...)
and to the fact that I personally and not very familiar with the
language.

I've just pushed up a patch which should improve upon the python session
behavior.  After this patch your example returns the following
results...

--8<---------------cut here---------------start------------->8---
#+begin_src python :session :results silent
  def var(x):
      return float(x ** 2)
#+end_src

#+begin_src python :session :result value
  def var2(x):
      return x ** 2 * var(x)
  
  var2(10)
#+end_src

#+results:
: 10000.0
--8<---------------cut here---------------end--------------->8---

Please let me know if you notice any other problematic behavior.

Thanks -- Eric

-- 
Eric Schulte
http://cs.unm.edu/~eschulte/

Reply via email to