Inversion & retrogradation?

I think that exists, but it’s not documented yet (on purpose, as the API is not finalised yet as far as I understood).

There is a lua console however (script->show console). Perhaps with reflection one could work it out? Try this:

local seen={}

    function dump(t,i)
        local s={}
        local n=0
        for k in pairs(t) do
            n=n+1 s[n]=k
        for k,v in ipairs(s) do
            if type(v)=="table" and not seen[v] then


Interesting. I did find find a site on Lua. It looks pretty straightforward. I’ll give it go and let you know how it works.

Thank you

Any update on whether composer tools like this will be included in the next version of Dorico?

We can’t make concrete promises, but it’s definitely something we are looking at.

1 Like

Your team is wonderful! Looking forward to this some day.

You don’t need to be a serialist to find retrogade/inversion useful: also handy for period-style pastiche, and neo-classical derivations thereof

I think the Finale implementation is a plug-in, isn’t it?

I agree that retrogate and inversion is a very useful/ handy tool on composing . Look forward to have such composition tools in Dorico as well soon.

!edargorter dda, esaelp, seY


When I first was shown Finale (over 30 years ago) I was bitterly disappointed that such obviously easy manipulation was not available. I naively expected that mechanising such things would be implemented in a computer environment; that, in addition to instantly seeing the solution to canons, diminutions, augmentations, etc, one would be able to input a tone row and instantly see the inversion, retrograde, etc . But it has never been so!


1 Like

I don’t remember when it was implemented, but Finale’s Canonic Utilities plug-in has been around a long time. Not native obviously, but there are a bunch of free matrix calculators out there that can be helpful too, like this one.

1 Like

I agree that inversion and retrograde in particular are exactly the sort of musical tools which should be available and the results can then be amended if necessary to fit into the musical context – I myself don’t very often use these tools completely unaltered but just now I want to and find it a shame that they are not available.
Just to add my voice to the list :smiley:

+1 please, it will be perfect

One more vote for this functionality.
Specially for retrograde.

Thank you

Yes, please. As soon as practicable. Thank you

I’ve experimented with inversion like this:

  1. Copy the subject to a new flow
  2. Copy the subject again (new measures), then use alt-arrow keys to move the notes up or down
  3. Then copy the inversion to the real flow, maybe using alt-arrows to adjust the pitch

Retrograde can be done similarly, only a problem if you have a really long subject.

Rhythmic retrograde (pitches remain in the original sequence but rhythms are backwards) can be done fairly easily using the L (lock durations) capability.

One more vote for this funcionality
Rythmic retrograde (letting pitches as is)
Retrograde (the traditional one you might learn at high school)
Intervalic inversion