 <p>You don't need to use <code>eval</code> at all to create a cell array of function handles using a <code>for</code> or <code>parfor</code> loop. Then all you need to do is to call each function handle stored in <code>functions</code> cell array.</p> <pre><code>functions = cell(1, 10); parfor i = 1:10 functions{i} = str2func([ 'function', num2str(i) ]); end parfor i = 1:10 result = functions{i}(); fprintf('%d ', result); end </code></pre>