Perl 6 - the future is here, just unevenly distributed

IRC log for #divine, 2014-12-19

| Channels | #divine index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
12:32 spito joined #divine
12:43 spito_ joined #divine
13:41 spito_ joined #divine
13:47 spito_ joined #divine
18:26 spito joined #divine
21:16 xstill hm, a teď je zásadní otázka, jestli v tom smallvectoru držet jestli je alokovanej na haldě v bitfieldu spolu s velikostí, nebo ho při resize přesunout zpátky na stack
21:21 xstill a ještě je opruz, že člověk nemůže vůbec používat std::copy a std::move pokud chce mít neinicializované hodnoty mezi size a capacity
21:21 spito a proč ne?
21:22 xstill protože std::move používá move-assign operátor, ale když mám ty honoty neinicializované, tak potřebuju move ctor
21:25 xstill ono reálně napsat ten smallvector pořádně znamená reimplemenentovat skoro celej std::vector
21:26 xstill jako jo, mohl bych se na to vykašlat a nechat tam místo neinicializovaných hodnot za koncem default-konstruované
21:26 xstill jenže to se mi nechce
21:27 xstill (už to má asi 160 řádků kódu)
21:27 xstill a nefunguje to
21:28 xstill ale jen trochu
21:35 xstill hm, dokonce existuje std::uninitialized_copy, jen jaksi zapoměli na unitialized_move
21:52 spito napiš komisi, že bys chtěl tuto funkcionalitu uvést do knihovny
21:52 spito ovšem musíš uvést i svoji implementaci :)
21:52 spito (prý to takhle fakt funguje)
21:53 xstill hm, to bych skoro mohl zkusit, třeba by to v C++17 bylo :-D
21:58 spito tady to někdo zkoušel: http://stackoverflow.com/questions/14483105/why-are-is-swappable-and-is-nothrow-swappable-not-included-in-c11
22:17 spito memmove použít nejde?
22:27 xstill no, já si myslím, že obcházet ten move konstruktor není zrovna ok
22:29 xstill objekty by mohli chctít vědět, že jsou přesouvány
22:41 mornfall no, spíš memcpy, ale opravdu není dobrý obcházet konstruktory

| Channels | #divine index | Today | | Search | Google Search | Plain-Text | summary