<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">As I (<i class="">believe I</i>) start to understand the parser, I somehow think that doing something like the following would </div><div class=""><ul class="MailOutline"><li class="">not violate (<i class="">not take too much risk</i>) the current Lexer/Parser</li><li class="">be somewhat reasonable to implement</li><li class="">address many of the reqs I read </li><li class="">leave some infrastructure in the Lexer/Parser to add more feature without needing to go back to square 0 next time</li></ul><div class=""><br class=""></div></div><div class="">Any thoughts?!</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><font face="Monaco" class="">#!/usr/bin/env xcrun swift</font></div><div class=""><font face="Monaco" class=""><br class=""></font></div><div class=""><span style="font-family: Monaco;" class="">let s1 = "{\"key1\": \"stringValue\"}"</span></div><div class=""><font face="Monaco" class=""><br class=""></font></div><div class=""><font face="Monaco" class="">let s2 = _"{"key1": "stringValue"}"_</font></div><div class=""><font face="Monaco" class=""><br class=""></font></div><div class=""><font face="Monaco" class="">let s3 =</font></div><div class=""><font face="Monaco" class=""> /* this is the same template */</font></div><div class=""><font face="Monaco" class=""> _"{"key1": "stringValue"}"_</font></div><div class=""><font face="Monaco" class=""><br class=""></font></div><div class=""><font face="Monaco" class="">let s4 =</font></div><div class=""><font face="Monaco" class="">/* this is (almost) the same template */</font></div><div class=""><font face="Monaco" class="">_"</font></div><div class=""><font face="Monaco" class="">{</font></div><div class=""><font face="Monaco" class=""> "key1": "stringValue"</font></div><div class=""><font face="Monaco" class=""> , "key2": "stringValue"</font></div><div class=""><font face="Monaco" class="">}</font></div><div class=""><font face="Monaco" class="">"_</font></div><div class=""><font face="Monaco" class=""><br class=""></font></div><div class=""><font face="Monaco" class="">let s5 = @literal(json)</font></div><div class=""><font face="Monaco" class=""> /* this is exactly the same template as s4 */</font></div><div class=""><font face="Monaco" class=""> _"</font></div><div class=""><font face="Monaco" class=""> {</font></div><div class=""><font face="Monaco" class=""> "key1": "stringValue"</font></div><div class=""><font face="Monaco" class=""> , "key2": "stringValue"</font></div><div class=""><font face="Monaco" class=""> }</font></div><div class=""><font face="Monaco" class=""> "_</font></div><div class=""><font face="Monaco" class=""><br class=""></font></div><div class=""><font face="Monaco" class="">let s6 = @literal(json)</font></div><div class=""><font face="Monaco" class=""> /* this is exactly the same template as s5&s4 */</font></div><div class=""><font face="Monaco" class=""> _"</font></div><div class=""><font face="Monaco" class=""> |{</font></div><div class=""><font face="Monaco" class=""> | "key1": "stringValue"</font></div><div class=""><font face="Monaco" class=""> | , "key2": "stringValue"</font></div><div class=""><font face="Monaco" class=""> |}</font></div><div class=""><font face="Monaco" class=""> "_</font></div><div class=""><font face="Monaco" class=""><br class=""></font></div></body></html>