anchor.diff:      let y = %E1 in let x = (%B1) y in (%B2) x
     @>
   
  +let letVectorBuildLength2: Rule = compilePatternToRule (letVectorBuildLength_exp ())
   
   let letInliner2: Rule = compilePatternToRule (letInliner_exp ())
   
  
positive.code:        )
    | _ -> None
  
  // c.f. "Compiling with Continuations, Continued", Andrew Kennedy, ICFP'07
  let letCommutingConversion_old (e: Expr): Expr Option = 
    match e with 
  
negative.code:   vectorSliceToBuild_old
    // compilePatternToRule vectorSliceToBuild_exp
  
  let letVectorBuildLength_old (e: Expr): Expr option =
    match e with
    | Patterns.Let (x, (DerivedPatterns.SpecificCall <@ vectorBuild @> (_, _, [size; f]) as buildExpr), e2) -> 
      let rec findLength(exp: Expr): (Expr * (Expr -> Expr)) option = 
  