В [предыдущем посте][1] ([англ.][2]) мы затронули два столпа дизайна Rust (поскольку во внутренней речи я постоянно склоняю название языка, дальше я буду использовать русскоязычное название «раст», что мне кажется более органичным — прим. перев.):
* безопасное использование памяти без сборщика мусора,
* многопоточность без гонок данных.
Этот пост начинает рассказ о третьем столпе:
* **абстракции без накладных расходов.**
Одна из мантр C++, которая делает его таким подходящим для системного программирования — принцип абстракции с нулевой стоимостью:
> Реализации C++ подчиняются принципу нулевой стоимости: ты не платишь за то, что не используешь [Страуструп, 1994]. Более того: то, что ты используешь, кодируется наилучшим образом.
>
>
>
>
>
> – Бьёрн Страуструп
>
>
[Читать дальше →][3]
[1]:
http://habrahabr.ru/post/256211/
[2]:
http://blog.rust-lang.org/2015/04/10/Fearless-Concurrency.html
[3]:
http://habrahabr.ru/post/257775/#habracut