Something I've found challenging is the inconsistency between babel languages. It makes it difficult for a babel user to get a source block to do what they want, or for a babel developer to even know what correct behavior is. I'm not sure if anything can be done since changes will likely break existing behavior, but it's good to at least know what the rule is and where the exceptions to the rule are. To that end I started a page on worg [1] to document current behavior for actions taken across babel languages. [1] https://orgmode.org/worg/org-contrib/babel/languages/lang-compat.html
ian martins <ianxm@jhu.edu> writes:
> Something I've found challenging is the inconsistency between babel
> languages. It makes it difficult for a babel user to get a source
> block to do what they want, or for a babel developer to even know what
> correct behavior is.
>
> I'm not sure if anything can be done since changes will likely break
> existing behavior, but it's good to at least know what the rule is and
> where the exceptions to the rule are. To that end I started a page on
> worg [1] to document current behavior for actions taken across babel
> languages.
>
> [1] https://orgmode.org/worg/org-contrib/babel/languages/lang-compat.html
this is a great initiative Ian. First step in addressing inconsistencies
is documenting them. I will try to allocate time on the weekend to
review what you have and see if there are any I know of which you have
not included.
--
Tim Cross
Hi Ian,
Thanks for getting this started. I have been collecting a list of
org babel issues and worg is definitely a better place to put them
than in one big email. Since there are so many different features that
a babel language implementation can support I don't want to try to put
them all in one table quite yet but I think it may be helpful to do so
eventually. Until that time does it make sense to add new sections to
the file that cover specific features? For example I have tests on
TRAMP support and/or support for execution via a remote session that I
would like to add from my internal notes. Can I add it as a new
section? Best!
Tom
On Wed, Nov 25, 2020 at 2:06 AM Tim Cross <theophilusx@gmail.com> wrote:
>
>
> ian martins <ianxm@jhu.edu> writes:
>
> > Something I've found challenging is the inconsistency between babel
> > languages. It makes it difficult for a babel user to get a source
> > block to do what they want, or for a babel developer to even know what
> > correct behavior is.
> >
> > I'm not sure if anything can be done since changes will likely break
> > existing behavior, but it's good to at least know what the rule is and
> > where the exceptions to the rule are. To that end I started a page on
> > worg [1] to document current behavior for actions taken across babel
> > languages.
> >
> > [1] https://orgmode.org/worg/org-contrib/babel/languages/lang-compat.html
>
>
> this is a great initiative Ian. First step in addressing inconsistencies
> is documenting them. I will try to allocate time on the weekend to
> review what you have and see if there are any I know of which you have
> not included.
>
>
> --
> Tim Cross
>
On Wed, Nov 25, 2020 at 2:06 AM Tim Cross <theophilusx@gmail.com> wrote: > > I will try to allocate time on the weekend to > review what you have and see if there are any I know of which you have > not included. That would be great. On Wed, Nov 25, 2020 at 2:39 PM Tom Gillespie <tgbugs@gmail.com> wrote: > > Since there are so many different features that > a babel language implementation can support I don't want to try to put > them all in one table quite yet but I think it may be helpful to do so > eventually. Until that time does it make sense to add new sections to > the file that cover specific features? For example I have tests on > TRAMP support and/or support for execution via a remote session that I > would like to add from my internal notes. Can I add it as a new > section? Yes, definitely. My plan is to add sections for major features or feature groups and have a table for each section, and when that stops working to think of something else. I am planning a section for variables focusing on passing lists and tables which will probably look a lot like the section on returning list and tables. There should definitely be a section on TRAMP.
[-- Attachment #1: Type: text/plain, Size: 930 bytes --] On Wed, 25 Nov 2020 at 05:20, ian martins <ianxm@jhu.edu> wrote: > Something I've found challenging is the inconsistency between babel > languages. It makes it difficult for a babel user to get a source > block to do what they want, or for a babel developer to even know what > correct behavior is. > > I'm not sure if anything can be done since changes will likely break > existing behavior, but it's good to at least know what the rule is and > where the exceptions to the rule are. To that end I started a page on > worg [1] to document current behavior for actions taken across babel > languages. > > [1] https://orgmode.org/worg/org-contrib/babel/languages/lang-compat.html Wonderful, thank you. I have been thinking it would be nice to have a test suite along these lines, but detailed doc like this is more feasible and maintainable. When time permits I will work on adding Scheme to this page. Best wishes, Neil [-- Attachment #2: Type: text/html, Size: 1442 bytes --]
[-- Attachment #1: Type: text/plain, Size: 1055 bytes --] On Wed, 25 Nov 2020 at 05:20, ian martins <ianxm@jhu.edu> wrote: > Something I've found challenging is the inconsistency between babel > languages. It makes it difficult for a babel user to get a source > block to do what they want, or for a babel developer to even know what > correct behavior is. > > I'm not sure if anything can be done since changes will likely break > existing behavior, but it's good to at least know what the rule is and > where the exceptions to the rule are. To that end I started a page on > worg [1] to document current behavior for actions taken across babel > languages. > > [1] https://orgmode.org/worg/org-contrib/babel/languages/lang-compat.html FWIW, I did not understand the "functional" and "scripting" terms that you use on this page. I've understood now, from https://orgmode.org/worg/org-contrib/babel/intro.html, that you mean "results: value" and "results: output". For me it would be better if you said that instead of "functional" and "scripting", as the former is what I can actually type in my Org files. [-- Attachment #2: Type: text/html, Size: 1665 bytes --]
On Thu, Nov 26, 2020 at 9:42 AM Neil Jerram <neiljerram@gmail.com> wrote: > Wonderful, thank you. I have been thinking it would be nice to have a test suite along these lines, but detailed doc like this is more feasible and maintainable. A test suite is a good idea as a next step to protect correct behaviors. I want to first look at actual behaviors and get agreement on correct behaviors first. On the other hand, each of the language's test suites should cover the same ground so a separate test suite may not make sense. > When time permits I will work on adding Scheme to this page. Great, thanks! > FWIW, I did not understand the "functional" and "scripting" terms that you use on this page. > > I've understood now, from https://orgmode.org/worg/org-contrib/babel/intro.html, that you mean "results: value" and "results: output". For me it would be better if you said that instead of "functional" and "scripting", as the former is what I can actually type in my Org files. yes, it's in the manual as well [1], but I agree that alternating between two sets of terms here is unnecessarily confusing. Will change. [1] https://orgmode.org/manual/Results-of-Evaluation.html#Results-of-Evaluation