title: Swift Compiler Error: "Expression too complex" on a string concatenation
body: <p>I find this amusing more than anything. I've fixed it, but I'm wondering about the cause. Here is the error: <code>DataManager.swift:51:90: Expression was too complex to be solved in reasonable time; consider breaking up the expression into distinct sub-expressions</code>. Why is it complaining? It seems like one of the most simple expressions possible.</p>
  
  <p>The compiler points to the <code>columns + ");";</code> section</p>
  
  <pre><code>func tableName() -&gt; String { return("users"); } 
  
  func createTableStatement(schema: [String]) -&gt; String {
  
      var schema = schema;
  
      schema.append("id string");
      schema.append("created integer");
      schema.append("updated integer");
      schema.append("model blob");
  
      var columns: String = ",".join(schema);
  
      var statement = "create table if not exists " + self.tableName() + "(" + columns + ");";
  
      return(statement);
  }
  </code></pre>
  
  <p>the fix is:</p>
  
  <pre><code>var statement = "create table if not exists " + self.tableName();
  statement += "(" + columns + ");";
  </code></pre>
  
  <p>this also works (via @efischency) but I don't like it as much because I think the <code>(</code> get lost: </p>
  
  <p><code>var statement = "create table if not exists \(self.tableName()) (\(columns))"</code></p>