On Thu, Apr 04, 2013 at 03:59:36PM +0200, Sebastien Vauban wrote: > Hi Achim, > > Achim Gratz wrote: > > Rick Frankel writes: > >> Missed verbatim. Thanks for the pointer, it works, but i think that > >> perl is double-processing returned values. If we do the same things in > >> elisp i get (my) expected results: > >> > >> #+begin_src elisp :results raw > >> "|c1|c2| > >> |- > >> |a|1| > >> |b|2|"; > >> #+end_src > > > > Elisp is different from all other languages: it doesn't do any > > processing of strings to begin with for value returns. The reason that > > Perl processes "raw" results is that org-babel-result-cond does not > > switch to the "scalar" path for this condition, which is why you need > > the extra "verbatim". It probably should, though, so if Eric agrees > > then I will push a change that does this. > > IIUC, wouldn't that be changing the default answer to "how to interpret the > results" just for Perl? While the default answer for all languages seems to > be "table"?
It's not. only shell (which doesn't have _value_ results), and sql, force the results to be interpreted as a table. elisp, ruby and python seem to treat raw results as scalars. rick