Thread overview | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
November 16, 2015 Wanted: Review manager for std.experimental.range.ndslice | ||||
---|---|---|---|---|
| ||||
Hello, Review manager for N-dimensional ranges is wanted Docs (see PR for latest version): http://dtest.thecybershadow.net/artifact/website-7a646fdea76569e009844cdee5c93edab10980ca-cdcb694c40ec47acf88b0aa878e1623e/web/phobos-prerelease/std_experimental_range_ndslice.html PR: https://github.com/D-Programming-Language/phobos/pull/3397 DUB: http://code.dlang.org/packages/dip80-ndslice Best Regards, Ilya |
November 16, 2015 Re: Wanted: Review manager for std.experimental.range.ndslice | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ilya Yaroshenko | On Monday, 16 November 2015 at 03:05:03 UTC, Ilya Yaroshenko wrote:
> Hello,
> Review manager for N-dimensional ranges is wanted
>
> Docs (see PR for latest version): http://dtest.thecybershadow.net/artifact/website-7a646fdea76569e009844cdee5c93edab10980ca-cdcb694c40ec47acf88b0aa878e1623e/web/phobos-prerelease/std_experimental_range_ndslice.html
>
> PR: https://github.com/D-Programming-Language/phobos/pull/3397
>
> DUB: http://code.dlang.org/packages/dip80-ndslice
>
> Best Regards,
> Ilya
Nice work!
If I have a matrix like
1 2
3 4
iota(4).sliced(2,2);
Is there a way to transform it to:
1 1 1 2 2 2
1 1 1 2 2 2
1 1 1 2 2 2
3 3 3 4 4 4
3 3 3 4 4 4
3 3 3 4 4 4
or
0 0 0 0 0 0
0 1 0 0 2 0
0 0 0 0 0 0
0 0 0 0 0 0
0 3 0 0 4 0
0 0 0 0 0 0
?
Of course the inverse operation seems quite easier to do using slices.
|
November 16, 2015 Re: Wanted: Review manager for std.experimental.range.ndslice | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrea Fontana | On Monday, 16 November 2015 at 09:56:57 UTC, Andrea Fontana wrote: > On Monday, 16 November 2015 at 03:05:03 UTC, Ilya Yaroshenko wrote: >> Hello, >> Review manager for N-dimensional ranges is wanted >> >> Docs (see PR for latest version): http://dtest.thecybershadow.net/artifact/website-7a646fdea76569e009844cdee5c93edab10980ca-cdcb694c40ec47acf88b0aa878e1623e/web/phobos-prerelease/std_experimental_range_ndslice.html >> >> PR: https://github.com/D-Programming-Language/phobos/pull/3397 >> >> DUB: http://code.dlang.org/packages/dip80-ndslice >> >> Best Regards, >> Ilya > > Nice work! > If I have a matrix like > > 1 2 > 3 4 > > iota(4).sliced(2,2); > > Is there a way to transform it to: > > 1 1 1 2 2 2 > 1 1 1 2 2 2 > 1 1 1 2 2 2 > 3 3 3 4 4 4 > 3 3 3 4 4 4 > 3 3 3 4 4 4 > > or > > 0 0 0 0 0 0 > 0 1 0 0 2 0 > 0 0 0 0 0 0 > 0 0 0 0 0 0 > 0 3 0 0 4 0 > 0 0 0 0 0 0 > > ? > > Of course the inverse operation seems quite easier to do using slices. ``` import std.algorithm, std.range, std.stdio; auto m = iota(1, 5).sliced(2, 2); "%(%(%s %)\n%)\n".writefln(m); auto w = createSlice!int(6, 6); w[1..$, 1..$].strided!0(3).strided!1(3)[] = m; "%(%(%s %)\n%)\n".writefln(w); foreach(i; 0..3) foreach(j; 0..3) w[i..$, j..$].strided!0(3).strided!1(3)[] = m; "%(%(%s %)\n%)\n".writefln(w); ``` Prints: 1 2 3 4 0 0 0 0 0 0 0 1 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 4 0 0 0 0 0 0 0 1 1 1 2 2 2 1 1 1 2 2 2 1 1 1 2 2 2 3 3 3 4 4 4 3 3 3 4 4 4 3 3 3 4 4 4 --Ilya |
November 16, 2015 Re: Wanted: Review manager for std.experimental.range.ndslice | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ilya Yaroshenko | On Monday, 16 November 2015 at 03:05:03 UTC, Ilya Yaroshenko wrote:
> Hello,
> Review manager for N-dimensional ranges is wanted
What does the job entail?
|
November 16, 2015 Re: Wanted: Review manager for std.experimental.range.ndslice | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jack Stouffer | On Monday, 16 November 2015 at 19:56:01 UTC, Jack Stouffer wrote: > On Monday, 16 November 2015 at 03:05:03 UTC, Ilya Yaroshenko wrote: >> Hello, >> Review manager for N-dimensional ranges is wanted > > What does the job entail? It is very close draft: http://wiki.dlang.org/Review/Process |
November 16, 2015 Re: Wanted: Review manager for std.experimental.range.ndslice | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ilya | On Monday, 16 November 2015 at 20:12:37 UTC, Ilya wrote:
> It is very close draft:
> http://wiki.dlang.org/Review/Process
I volunteer then, if you'll have me.
|
November 16, 2015 Re: Wanted: Review manager for std.experimental.range.ndslice | ||||
---|---|---|---|---|
| ||||
Posted in reply to Jack Stouffer | On Monday, 16 November 2015 at 21:01:03 UTC, Jack Stouffer wrote:
> On Monday, 16 November 2015 at 20:12:37 UTC, Ilya wrote:
>> It is very close draft:
>> http://wiki.dlang.org/Review/Process
>
> I volunteer then, if you'll have me.
Great! Thank you :)
|
November 17, 2015 Re: Wanted: Review manager for std.experimental.range.ndslice | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ilya Yaroshenko | On Monday, 16 November 2015 at 19:17:34 UTC, Ilya Yaroshenko wrote:
> w[1..$, 1..$].strided!0(3).strided!1(3)[] = m;
Impressive :)
|
November 17, 2015 Re: Wanted: Review manager for std.experimental.range.ndslice | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrea Fontana | On Tuesday, 17 November 2015 at 13:45:38 UTC, Andrea Fontana wrote:
> On Monday, 16 November 2015 at 19:17:34 UTC, Ilya Yaroshenko wrote:
>> w[1..$, 1..$].strided!0(3).strided!1(3)[] = m;
>
> Impressive :)
Another way:
w[1..2, 1..2] = m;
--Ilya
|
November 18, 2015 Re: Wanted: Review manager for std.experimental.range.ndslice | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ilya | On Tuesday, 17 November 2015 at 20:05:26 UTC, Ilya wrote:
> On Tuesday, 17 November 2015 at 13:45:38 UTC, Andrea Fontana wrote:
>> On Monday, 16 November 2015 at 19:17:34 UTC, Ilya Yaroshenko wrote:
>>> w[1..$, 1..$].strided!0(3).strided!1(3)[] = m;
>>
>> Impressive :)
>
> Another way:
> w[1..2, 1..2] = m;
>
> --Ilya
Oh, the last one is wrong :/
|
Copyright © 1999-2021 by the D Language Foundation