From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?ISO-8859-1?Q?Andreas_R=F6hler?= Subject: Re: Fwd: Fwd: run python from org, draft Date: Fri, 29 Mar 2013 21:58:34 +0100 Message-ID: <5156007A.6030003@easy-emacs.de> References: <5154BC51.1050001@easy-emacs.de> <5155A97D.2090907@easy-emacs.de> <87sj3e6y5n.fsf@gmail.com> <5155B346.3060708@easy-emacs.de> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:38365) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ULgMU-0001Dh-JN for emacs-orgmode@gnu.org; Fri, 29 Mar 2013 16:57:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ULgMS-0007S7-BJ for emacs-orgmode@gnu.org; Fri, 29 Mar 2013 16:57:22 -0400 Received: from moutng.kundenserver.de ([212.227.126.187]:49796) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ULgMS-0007Rs-0i for emacs-orgmode@gnu.org; Fri, 29 Mar 2013 16:57:20 -0400 In-Reply-To: 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: emacs-orgmode@gnu.org Cc: Gary Oberbrunner , Eric Schulte Am 29.03.2013 21:10, schrieb Gary Oberbrunner: > On Fri, Mar 29, 2013 at 11:29 AM, Andreas Röhler < > andreas.roehler@easy-emacs.de> wrote: > >> IMO org-babel should be able to run source code as is. >> If an org-mode specific modification is required at such a trivial form, >> what to expect wrt complex environments? >> >> BTW this fails also: >> >> #+begin_src python >> print "Hello, world!" >> #+end_src python >> >> #+RESULTS: >> : None >> > > As the worg doc says, if you want to capture stdout rather than a value, > you need :results output. The default is :results value (which in session > mode is the last expression executed, and in non-session mode is whatever > you return().) > > I agree it is a little odd, but given how python works it's not clear to me > how to improve it. Hi Gary, if someone wants the value of the last expression returned, it's much simpler to write Python/native language, than cryptic, lately documented org-mode flags. That's a kind of re-inventing a programming-language, also redundant. Specifically, in non-session mode, the python > interpreter is run as a separate process and fed the input (with some stuff > around it). There is no way for python to get "the last value" in > non-interactive mode, No? Any program may output any of it's values. > so instead ob-python wraps your code in a function, > then calls it, and writes the return value of that function to the temp > file. Conversely in session mode, each block is talking to the same > interactive python interpreter, just what you get if you type 'python' at > the shell. So using return() there doesn't make any sense, and wouldn't > work. The use of "return" doesn't depend from interactive mode. It's related to a function. Seen from org-user, IMO any back-ends interactive mode or not is not of interest. ":session" mimics and/or probably uses it, but it would also possible to implement it as a file, loading previous values from a storage. I don't see any way to make them both behave the same way. > Probably most useful at this list is to define which feature/behavior is most convenient. Why people use this mode, what they want to do. Cheers, Andreas