One distinction that has occurred to me (especially following comments on
the mailing list) is that of "babel language" and "babel language work-flow".
In other words, I can visualise refactoring ob-lilypond to be no more than
a specification of the Lilypond syntax, and working in parallel, on a
work-flow implementation for Lilypond that is "opinionated" in terms of
adjusting org-babel settings away from their defaults / removing work-flow
noise etc. ( org-lilypond.el ) ? Would this make sense, and if so where would
it live (aligned to org-babel / a native Emacs mode perhaps)?
I hope that makes sense.
That sounds like a good idea. Ideally ob-lilypond should include just
those elements expected by the code block interface, namely functions
for session/external evaluation, for expanding variables in code block
bodies, and for returning results to Org-mode. I think that it would be
a good idea to develop an external org-lilypond to support a more
comprehensive workflow.