Acceso dinámico a campos anidados en Matlab.

(¿Cómo) puedo acceder dinámicamente a los campos anidados en Matlab? Estaba pensando en un caso de prueba como este:

a = struct;
a.foo.bar = [];

place = {'foo', 'bar'};

a.(place{:})

% instead of the following, which only works if know in advance
% how many elements 'place' has
a.(place{1}).(place{2})

Respuestas a la pregunta(2)

Su respuesta a la pregunta