<div dir="ltr"><div>You could add or prototype this with quasiquotes (<a href="http://quasiquotes.readthedocs.io/en/latest/">http://quasiquotes.readthedocs.io/en/latest/</a>). You just need to be able to parse the body of your expression as a string into an array. Here is a quick example with a parser that only accepts 2d arrays:<br><br>```<br># coding: quasiquotes<br><br>import numpy as np<br>from quasiquotes import QuasiQuoter<br><br><br>@object.__new__<br>class array(QuasiQuoter):<br>    def quote_expr(self, expr, frame, col_offset):<br>        return np.array([<br>            eval('[%s]' % d, frame.f_globals, frame.f_locals)<br>            for d in expr.split('||')<br>        ])<br><br><br>def f():<br>    a = 1<br>    b = 2<br>    c = 3<br>    return [$array| a, b, c || 4, 5, 6 |]<br><br><br>if __name__ == '__main__':<br>    print(f())<br>```<br><br></div>Personally I am not sold on replacing `[` and `]` with `|` because I like that you can visually see where dimensions are closed.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Oct 19, 2016 at 3:24 PM, Thomas Nyberg <span dir="ltr"><<a href="mailto:tomuxiong@gmx.com" target="_blank">tomuxiong@gmx.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Personally I like the way that numpy does it now better (even for multidimensional arrays). Being able to index into the different sub dimension using just [] iteratively matches naturally with the data structure itself in my mind. This may also just be my fear of change though...<span class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Here is an example of how it would be used for a 1D array:<br>
<br>
a = [| 0, 1, 2 |]<br>
<br>
Compared to the current approach:<br>
<br>
a = np.ndarray([0, 1, 2])<br>
</blockquote>
<br></span>
What would the syntax do if you don't have numpy installed? Is the syntax tied to numpy or could other libraries make use of it?<br>
<br>
Cheers,<br>
Thomas<br>
______________________________<wbr>_________________<br>
Python-ideas mailing list<br>
<a href="mailto:Python-ideas@python.org" target="_blank">Python-ideas@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/python-ideas" rel="noreferrer" target="_blank">https://mail.python.org/mailma<wbr>n/listinfo/python-ideas</a><br>
Code of Conduct: <a href="http://python.org/psf/codeofconduct/" rel="noreferrer" target="_blank">http://python.org/psf/codeofco<wbr>nduct/</a><br>
</blockquote></div><br></div>