<story><title>Modernizing AWK, a 45-year old language, by adding CSV support</title><url>https://benhoyt.com/writings/goawk-csv/?m</url></story><parent_chain><item><author>mro_name</author><text>I recently learned via &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;news.ycombinator.com&amp;#x2F;item?id=31257248&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;news.ycombinator.com&amp;#x2F;item?id=31257248&lt;/a&gt; that ASCII has the idea of records and fields ever since. It&amp;#x27;s just not used, but workaround CSV.&lt;p&gt;No improvement of CSV handling will ever improved on that.</text></item></parent_chain><comment><author>belter</author><text>Discussed here before, not everybody was seeing only positives.&lt;p&gt;&amp;quot;ASCII Delimited Text – Not CSV or TAB delimited text&amp;quot;: 
 &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;news.ycombinator.com&amp;#x2F;item?id=7474600&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;news.ycombinator.com&amp;#x2F;item?id=7474600&lt;/a&gt;</text></comment>
<story><title>Modernizing AWK, a 45-year old language, by adding CSV support</title><url>https://benhoyt.com/writings/goawk-csv/?m</url></story><parent_chain><item><author>mro_name</author><text>I recently learned via &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;news.ycombinator.com&amp;#x2F;item?id=31257248&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;news.ycombinator.com&amp;#x2F;item?id=31257248&lt;/a&gt; that ASCII has the idea of records and fields ever since. It&amp;#x27;s just not used, but workaround CSV.&lt;p&gt;No improvement of CSV handling will ever improved on that.</text></item></parent_chain><comment><author>cb321</author><text>See the &amp;quot;Conventions for lossless conversion to TSV&amp;quot; on the current version of &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;en.wikipedia.org&amp;#x2F;wiki&amp;#x2F;Tab-separated_values&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;en.wikipedia.org&amp;#x2F;wiki&amp;#x2F;Tab-separated_values&lt;/a&gt; .  There are really only 3 chars to escape - the escape char, and 2 delimiters - to make everything easy to deal with (even binary data in fields - what &amp;quot;lossless&amp;quot; means here).</text></comment>