title: How to dynamically use compose/only?
body: <p>I tried to generate the actions block dynamically in the code below (from static version here <a href="https://stackoverflow.com/questions/3326484/extending-build-markup-with-repeat-refinement/">Extending Build-markup with repeat refinement</a>) but It doesn't work why ?</p>
  
  <pre><code>build-markup: func [
      {Return markup text replacing &lt;%tags%&gt; with their evaluated results.} 
      content [string! file! url!] 
      /repeat block-fields block-values
      /quiet "Do not show errors in the output." 
      /local out eval value
  ][
  
    out: make string! 126 
  
    either not repeat [
        content: either string? content [copy content] [read content] 
  
        eval: func [val /local tmp] [
            either error? set/any 'tmp try [do val] [
                if not quiet [
                    tmp: disarm :tmp 
                    append out reform ["***ERROR" tmp/id "in:" val]
                ]
            ] [
                if not unset? get/any 'tmp [append out :tmp]
            ]
        ] 
        parse/all content [
            any [
                end break 
                | "&lt;%" [copy value to "%&gt;" 2 skip | copy value to end] (eval value) 
                | copy value [to "&lt;%" | to end] (append out value)
            ]
        ]
      ][          
  
          actions: copy []
  
          n: length? block-fields
          repeat i n [
            append actions compose/only [
              set in system/words (to-lit-word pick (block-fields) (i)) get pick (block-fields) (i)
            ]
          ]
          append actions compose/only [
              append out build-markup content
          ]
          foreach :block-fields block-values actions        
      ] 
      out
  ]
  
  template1: {    &lt;td&gt;&lt;%a%&gt;&lt;/td&gt;&lt;td&gt;&lt;%b%&gt;&lt;/td&gt;
  }
  template2: {  &lt;tr&gt;
  &lt;%build-markup/repeat template1 [a b] [1 2 3 4]%&gt;
    &lt;/tr&gt;
  }
  template3: {&lt;table&gt;
  &lt;%build-markup/repeat template2 [a b] [1 2 3 4 5 6]%&gt;
  &lt;/table&gt;}
  build-markup template3
  </code></pre>
  
  <p>Output error:</p>
  
  <pre><code>&gt;&gt; build-markup template3
  == {&lt;table&gt;
  ***ERROR no-value in: build-markup/repeat template2 [a b] [1 2 3 4 5 6]
  &lt;/table&gt;}
  &gt;&gt;
  </code></pre>