Currently the keyword argument duration may be an expression, a boolean or None.
I would like to prepare the changes drafted in #535 which unfortunatly require the more complex changes from #552 by deprecating the boolean argument and only failing in __init__ if we can prove that the durations are incompatible.
Another option would be to be more permissive and only warn in that case that create_program will fail.
Current plan: