<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&nbsp;</div><div class=""><ul class="MailOutline"><li class="">not violate (<i class="">not&nbsp;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&nbsp;</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="">&nbsp; &nbsp; /* this is the same template */</font></div><div class=""><font face="Monaco" class="">&nbsp; &nbsp; _"{"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="">&nbsp; "key1": "stringValue"</font></div><div class=""><font face="Monaco" class="">&nbsp; , "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="">&nbsp; /* this is exactly the same template as s4 */</font></div><div class=""><font face="Monaco" class="">&nbsp; _"</font></div><div class=""><font face="Monaco" class="">&nbsp; {</font></div><div class=""><font face="Monaco" class="">&nbsp; &nbsp; "key1": "stringValue"</font></div><div class=""><font face="Monaco" class="">&nbsp; &nbsp; , "key2": "stringValue"</font></div><div class=""><font face="Monaco" class="">&nbsp; }</font></div><div class=""><font face="Monaco" class="">&nbsp; "_</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="">&nbsp; /* this is exactly the same template as s5&amp;s4 */</font></div><div class=""><font face="Monaco" class="">&nbsp; _"</font></div><div class=""><font face="Monaco" class="">&nbsp; |{</font></div><div class=""><font face="Monaco" class="">&nbsp; | &nbsp;"key1": "stringValue"</font></div><div class=""><font face="Monaco" class="">&nbsp; | &nbsp;, "key2": "stringValue"</font></div><div class=""><font face="Monaco" class="">&nbsp; |}</font></div><div class=""><font face="Monaco" class="">&nbsp; "_</font></div><div class=""><font face="Monaco" class=""><br class=""></font></div></body></html>