Sebastien Vauban writes: > The following does work.
It does, I agree, but this does not. If you run export on this: --8<---------------cut here---------------start------------->8--- # -*- org-confirm-babel-evaluate: nil -*- Setting the stage #+BEGIN_SRC ocaml :results silent :exports none let f x = x;; #+END_SRC Using the function #+BEGIN_SRC ocaml :results code verbatim :exports results f 3;; #+END_SRC --8<---------------cut here---------------end--------------->8--- Then the `f 3' results in an error. Looking in the ocaml buffer that is launched for evaluation, one sees: ,---- | f 3;; | "org-babel-ocaml-eoe";; | Characters 0-1: | f 3;; | ^ | Error: Unbound value f | # - : string = "org-babel-ocaml-eoe" `---- And the declaration of f was not run. If you replace `none' by `results' for the `:exports' of the first block, then everything works fine. I don't think this is specific to ocaml, I guess it may happen with every session-based evaluation. Alan