<div dir="ltr">This proposal gives FSAs their own literal syntax. You write [; 3, 5] to make a FSA, not [3, 5].<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Jul 23, 2017 at 11:54 PM, David Sweeris <span dir="ltr">&lt;<a href="mailto:davesweeris@mac.com" target="_blank">davesweeris@mac.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><span class=""><div><br></div><div>On Jul 23, 2017, at 8:32 PM, Taylor Swift &lt;<a href="mailto:kelvin13ma@gmail.com" target="_blank">kelvin13ma@gmail.com</a>&gt; wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Sun, Jul 23, 2017 at 5:48 PM, David Sweeris <span dir="ltr">&lt;<a href="mailto:davesweeris@mac.com" target="_blank">davesweeris@mac.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div dir="auto"><span><div><br></div><div>On Jul 23, 2017, at 12:18, Taylor Swift &lt;<a href="mailto:kelvin13ma@gmail.com" target="_blank">kelvin13ma@gmail.com</a>&gt; wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Sun, Jul 23, 2017 at 2:21 PM, David Sweeris <span dir="ltr">&lt;<a href="mailto:davesweeris@mac.com" target="_blank">davesweeris@mac.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div><br></div><div><span class="m_-4281577226569470587m_-7264807722288193896gmail-">On Jul 23, 2017, at 09:08, Taylor Swift &lt;<a href="mailto:kelvin13ma@gmail.com" target="_blank">kelvin13ma@gmail.com</a>&gt; wrote:<br><br></span><div><span class="m_-4281577226569470587m_-7264807722288193896gmail-"><blockquote type="cite"><div><div dir="ltr"><span class="m_-4281577226569470587m_-7264807722288193896gmail-m_-3186585211898980809gmail-im"><span style="font-family:monospace,monospace">let fsa:[2 * Int] = [2 * 5, 3</span><span style="font-family:monospace,monospace">] // [10, 3] ???</span></span></div></div></blockquote><div><br></div></span><div>Correct. If you wanted a multidimensional array, that&#39;d be written &quot;let nestedFSA: [2*[5*Int]]&quot;. Or, speculating a bit, I suppose maybe &quot;<span style="background-color:rgba(255,255,255,0)">let nestedFSA: [[5*Int]*2]&quot;, if we wanted there to be a column-major option</span>. IMHO all those read better than this proposal&#39;s syntax.</div></div><div><br></div><div><br></div></div></div></blockquote><div><br></div><div>No, what I’m saying is does the phrase “[2 * 5, 3]” mean a fixed size array of length two and with the elements 5 and 3, or a flexible sized array with two elements 10 and 3? This is v confusing and difficult to read, especially when you have actual multiplications going on such as <br><br></div><div><span class="m_-4281577226569470587m_-7264807722288193896gmail-"><div><div><span class="m_-4281577226569470587m_-7264807722288193896gmail-m_-3186585211898980809gmail-im"><span style="font-family:monospace,monospace">let fsa:[2 * Int] = [2 * 3 * 5, 3</span><span style="font-family:monospace,monospace">] // [15, 3] ???</span></span></div></div></span></div></div></div></div></div></blockquote><div><br></div></span><div>That&#39;s... huh? To me, &quot;[<span style="background-color:rgba(255,255,255,0)">2 * 3 * 5, 3]&quot; should </span>obviously evaluate to &quot;[30, 3]&quot;. How are you getting that &quot;[2*5*3, 3]&quot; could be a 2-element FSA containing 15 and 3? Are you suggesting that instead of &quot;[value * value * value, value]&quot;, it could be parsed as &quot;[modifier value * value, value]&quot; (with `modifier` being &quot;2 *&quot;)? To me, that syntax would <i>strongly</i> suggest that the modifier only applies to the first element of the array, which would mean the only other option for parsing it would be equivalent to &quot;[[3, 5], 3]&quot;, which is neither a match for fsa&#39;s type, nor a semantically valid array (the elements have to be the same type), nor a syntactically valid array (the nested array in the first element is missing its &quot;[]&quot;).</div><span><div><br></div></span></div></div></blockquote><div><br></div><div>Well, that <i>is</i> the syntax you’re proposing right? What comes on the left of the asterisk is the FSA dimensions, and what comes to the right is the FSA elements. </div></div></div></div></div></blockquote><div><br></div></span>No, the <i>type</i> of the FSA&#39;s elements is what comes to the right: <span style="background-color:rgba(255,255,255,0)">&quot;[count * <i>Type</i>]&quot;.</span> I don&#39;t recall any discussion around the value side of things, so I&#39;d guess they would&#39;ve just used the existing array literal syntax, &quot;let fsa: [2*[2*Int]] = [[0, 1], [2, 3]]&quot;.<div><div><div><br></div><div>- Dave Sweeris</div><blockquote type="cite"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div dir="auto"><span><div></div></span></div></div></blockquote></div></div></div></blockquote></div></div></div></blockquote></div><br></div>