This is a minimal example of a more complex problem. I need to build the Manipulate function as below with a variable number of parameters, which is why Manipulate is paired with @@ and Sequence@@allLimits. If possible, I wouldn't want to change that.
allLimits = {{{alpha1, 4Pi/9}, Pi/18, 17Pi/18}, {{alpha2, 4Pi/9}, Pi/18, 17Pi/18}};
Manipulate @@ {values = allLimits[[All, 1, 1]], Sequence @@ allLimits}
My problem is that values works fine within Manipulate but it is kept as a symbolic expression, so when evaluating values outside of Manipulate it gives
{alpha1,alpha2} instead of the current numerical values within Manipulate.
In the more complex problem, I need values to replace variables within lists that are too huge to handle analytically within Manipulate, and in the case above that is exactly what happens. So I think it would solve my problem if I were able to actually assign numerical values to values.
As a comparison, if we were to write it out like this:
Manipulate[
values = {alpha1, alpha2}, {{alpha1, 4Pi/9}, Pi/18, 17Pi/18}, {{alpha2, 4Pi/9}, Pi/18, 17Pi/18}]
then values does have numerical values ({4Pi/9, 4Pi/9}). This is what I would want while keeping the construction above.
Any help is much appreciated!

