Re: [O] evaluation issue with ocaml code (due to changes to org-babel-comint-with-output)
On 2015-12-18 22:38, Nicolas Goaziouwrites: > Hello, > > Alan Schmitt writes: > >> Can I push this? > > I have no objection. Thanks, I pushed it. Alan -- OpenPGP Key ID : 040D0A3B4ED2E5C7 Athmospheric CO₂ (Updated December 13, 2015, Mauna Loa Obs.): 401.31 ppm signature.asc Description: PGP signature
Re: [O] evaluation issue with ocaml code (due to changes to org-babel-comint-with-output)
Hello, Can I push this? Thanks, Alan On 2015-12-16 21:29, Alan Schmittwrites: > Hello, > > I finally found the issue (using the plain debugger): the call to > org-babel-comint-with-output was set to remove the echo, but the only > time there is an echo of the full body is when a single line function > has an error, and this echo is useful to show where the error is. Here > is a patch that makes sure the echo is kept. > > From 59e6912e6bf769fff2f48b6c2af95bda918d0cd9 Mon Sep 17 00:00:00 2001 > From: Alan Schmitt > Date: Wed, 16 Dec 2015 21:19:23 +0100 > Subject: [PATCH] ob-ocaml.el: Keep echo to display ocaml errors > > * ob-ocaml.el (org-babel-execute:ocaml): call > `org-babel-comint-with-output' with nil `remove-echo' argument. > --- > lisp/ob-ocaml.el | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/lisp/ob-ocaml.el b/lisp/ob-ocaml.el > index 48f8aba..68ac859 100644 > --- a/lisp/ob-ocaml.el > +++ b/lisp/ob-ocaml.el > @@ -66,7 +66,7 @@ > (session (org-babel-prep-session:ocaml > (cdr (assoc :session params)) params)) > (raw (org-babel-comint-with-output > - (session org-babel-ocaml-eoe-output t full-body) > + (session org-babel-ocaml-eoe-output nil full-body) > (insert >(concat > (org-babel-chomp full-body) ";;\n" > -- > 2.6.4 > > > For the record, the problem I wanted to fix. > > On 2015-12-14 13:04, Alan Schmitt writes: > >>> I have found that commit f0bf77e82a3d37ba7548aa40198bc982e9875f1b breaks >>> evaluation of ocaml code. With the following init file (the >>> `package-initialize' is there for tuareg to be available): >>> >>> #+begin_src emacs-lisp >>> (add-to-list 'load-path "/Users/schmitta/projets/org-mode/lisp") >>> >>> (require 'org) >>> >>> (package-initialize) >>> >>> (org-babel-do-load-languages >>> 'org-babel-load-languages >>> '((ocaml . t))) >>> #+end_src >>> >>> When I evaluate this block I get this result: >>> >>> #+BEGIN_SRC ocaml :results code verbatim :exports results >>> 1 + "toto";; >>> #+END_SRC >>> >>> #+results: >>> #+BEGIN_SRC ocaml >>> Characters 4-10: >>> 1 + "toto" >>> ^^ >>> Error: This expression has type string but an expression was expected of >>> type >>> int >>> #+END_SRC >>> >>> After commit f0bf77e82a3d37ba7548aa40198bc982e9875f1b I get this: >>> >>> #+results: >>> #+BEGIN_SRC ocaml >>> ;; >>> ^^ >>> Error: This expression has type string but an expression was expected of >>> type >>> int >>> #+END_SRC > > Best, > > Alan -- OpenPGP Key ID : 040D0A3B4ED2E5C7 Athmospheric CO₂ (Updated December 13, 2015, Mauna Loa Obs.): 401.31 ppm signature.asc Description: PGP signature
Re: [O] evaluation issue with ocaml code (due to changes to org-babel-comint-with-output)
Hello, Alan Schmittwrites: > Can I push this? I have no objection. Regards, -- Nicolas Goaziou
Re: [O] evaluation issue with ocaml code (due to changes to org-babel-comint-with-output)
Hello, I finally found the issue (using the plain debugger): the call to org-babel-comint-with-output was set to remove the echo, but the only time there is an echo of the full body is when a single line function has an error, and this echo is useful to show where the error is. Here is a patch that makes sure the echo is kept. From 59e6912e6bf769fff2f48b6c2af95bda918d0cd9 Mon Sep 17 00:00:00 2001 From: Alan SchmittDate: Wed, 16 Dec 2015 21:19:23 +0100 Subject: [PATCH] ob-ocaml.el: Keep echo to display ocaml errors * ob-ocaml.el (org-babel-execute:ocaml): call `org-babel-comint-with-output' with nil `remove-echo' argument. --- lisp/ob-ocaml.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lisp/ob-ocaml.el b/lisp/ob-ocaml.el index 48f8aba..68ac859 100644 --- a/lisp/ob-ocaml.el +++ b/lisp/ob-ocaml.el @@ -66,7 +66,7 @@ (session (org-babel-prep-session:ocaml (cdr (assoc :session params)) params)) (raw (org-babel-comint-with-output - (session org-babel-ocaml-eoe-output t full-body) + (session org-babel-ocaml-eoe-output nil full-body) (insert (concat (org-babel-chomp full-body) ";;\n" -- 2.6.4 For the record, the problem I wanted to fix. On 2015-12-14 13:04, Alan Schmitt writes: >> I have found that commit f0bf77e82a3d37ba7548aa40198bc982e9875f1b breaks >> evaluation of ocaml code. With the following init file (the >> `package-initialize' is there for tuareg to be available): >> >> #+begin_src emacs-lisp >> (add-to-list 'load-path "/Users/schmitta/projets/org-mode/lisp") >> >> (require 'org) >> >> (package-initialize) >> >> (org-babel-do-load-languages >> 'org-babel-load-languages >> '((ocaml . t))) >> #+end_src >> >> When I evaluate this block I get this result: >> >> #+BEGIN_SRC ocaml :results code verbatim :exports results >> 1 + "toto";; >> #+END_SRC >> >> #+results: >> #+BEGIN_SRC ocaml >> Characters 4-10: >> 1 + "toto" >> ^^ >> Error: This expression has type string but an expression was expected of type >> int >> #+END_SRC >> >> After commit f0bf77e82a3d37ba7548aa40198bc982e9875f1b I get this: >> >> #+results: >> #+BEGIN_SRC ocaml >> ;; >> ^^ >> Error: This expression has type string but an expression was expected of type >> int >> #+END_SRC Best, Alan -- OpenPGP Key ID : 040D0A3B4ED2E5C7 Athmospheric CO₂ (Updated December 13, 2015, Mauna Loa Obs.): 401.31 ppm signature.asc Description: PGP signature
Re: [O] evaluation issue with ocaml code (due to changes to org-babel-comint-with-output)
Hello, I could use some help to debug this. Could someone please tell me how to debug a macro (I would like to step through it using edebug)? Thanks, Alan On 2015-12-08 10:14, Alan Schmittwrites: > Hello, > > I have found that commit f0bf77e82a3d37ba7548aa40198bc982e9875f1b breaks > evaluation of ocaml code. With the following init file (the > `package-initialize' is there for tuareg to be available): > > #+begin_src emacs-lisp > (add-to-list 'load-path "/Users/schmitta/projets/org-mode/lisp") > > (require 'org) > > (package-initialize) > > (org-babel-do-load-languages > 'org-babel-load-languages > '((ocaml . t))) > #+end_src > > When I evaluate this block I get this result: > > #+BEGIN_SRC ocaml :results code verbatim :exports results > 1 + "toto";; > #+END_SRC > > #+results: > #+BEGIN_SRC ocaml > Characters 4-10: > 1 + "toto" > ^^ > Error: This expression has type string but an expression was expected of type > int > #+END_SRC > > After commit f0bf77e82a3d37ba7548aa40198bc982e9875f1b I get this: > > #+results: > #+BEGIN_SRC ocaml > ;; > ^^ > Error: This expression has type string but an expression was expected of type > int > #+END_SRC > > I tried to debug this but `org-babel-comint-with-output' is a macro and > I don't know how to debug macros … > > Thanks for any help regarding this (for instance telling me how to > edebug macros). > > Alan -- OpenPGP Key ID : 040D0A3B4ED2E5C7 Athmospheric CO₂ (Updated December 13, 2015, Mauna Loa Obs.): 401.31 ppm signature.asc Description: PGP signature
[O] evaluation issue with ocaml code (due to changes to org-babel-comint-with-output)
Hello, I have found that commit f0bf77e82a3d37ba7548aa40198bc982e9875f1b breaks evaluation of ocaml code. With the following init file (the `package-initialize' is there for tuareg to be available): #+begin_src emacs-lisp (add-to-list 'load-path "/Users/schmitta/projets/org-mode/lisp") (require 'org) (package-initialize) (org-babel-do-load-languages 'org-babel-load-languages '((ocaml . t))) #+end_src When I evaluate this block I get this result: #+BEGIN_SRC ocaml :results code verbatim :exports results 1 + "toto";; #+END_SRC #+results: #+BEGIN_SRC ocaml Characters 4-10: 1 + "toto" ^^ Error: This expression has type string but an expression was expected of type int #+END_SRC After commit f0bf77e82a3d37ba7548aa40198bc982e9875f1b I get this: #+results: #+BEGIN_SRC ocaml ;; ^^ Error: This expression has type string but an expression was expected of type int #+END_SRC I tried to debug this but `org-babel-comint-with-output' is a macro and I don't know how to debug macros … Thanks for any help regarding this (for instance telling me how to edebug macros). Alan -- OpenPGP Key ID : 040D0A3B4ED2E5C7 Athmospheric CO₂ (Updated December 6, 2015, Mauna Loa Obs.): 400.80 ppm signature.asc Description: PGP signature