- PVSM.RU - https://www.pvsm.ru -
Лучше с задержкой на неделю, чем никогда, так что предлагаю вашему вниманию субъективную подборку ржавых новостей за октябрь.
В этой подборке: Rust 1.30, Rust 2018, конференция RustRush, Amethyst 0.9, сквотинг crates.io, сборщик мусора, споры про 2D графику, Non-lexical lifetimes, функциональный GUI.
Вышел Rust 1.30 (обсуждение [1]). Основные нововведения — частичная стабилизация процедурных макросов, импорт макросов через обычный use
, улучшение системы модулей, "сырые" идентификаторы и поддержка no_std
приложений (подробнее в хабропереводе [2]).
Rust 1.31 будет первым выпуском редакции (edition) "Rust2018" [3] (что за "редакции"? [4]), в связи с чем всех желающих приглашают подключаться к тестированию бета версии 1.31 и cargo fix [5].
RustRush 2018 — конференция для разработчиков на Rust, посвящённая вебу, блокчейну, высокой производительности и системному программированию.
Обновился сайт (rustrush.ru [6]) — опубликован почти полный список докладчиков [7] и программа [8], начата продажа основной партии билетов [9].
Будут четыре участника проекта Rust Language: Стив Клабник, Эшли Уильямс, Паскаль Хертлиф, Катарина Фей. Из других звёзд локальных и не очень — Максим Лапшин с прошивкой IP-камеры, Костя Степанов и Пьер Кригер aka tomaka. Программа [10].
Если кто-то хочет подать доклад, до 19 ноября открыт Call for Papers [11].
Programming WebAssembly with Rust — The Book [12] (обсуждение [13]) — намечается книга по WASM/Rust;
WebAssembly’s post-MVP future: A cartoon skill tree [14] (хаброперевод: "Будущее WebAssembly в виде «дерева навыков»" [15]) — куда и как дальше будет развиваться WASM и какую роль в его экосистеме будут играть языки вроде Rust;
Ruukh [16] (код [17], обсуждение [18]) — экспериментальный фронтэнд веб фреймворк (использует нестабильные фичи), вдохновлен VueJS и ReactJS;
Draco [19] (обсуждение [20]) — библиотека для построения клиентских приложений, вдохновлена Redux и Elm [21];
Twiggy 0.3.0 [22] (код [23]) — среди прочих обновлений, у профейлера размера .wasm
файлов появилось руководство пользователя [24];
Для parcel [25] (молодая и быстрая система сборки JS проектов, которая дружит с растом [26] и не требует настройки) вышел [27] плагин, который интегрирует его с пакетом wasm_bindgen [28]: parcel-plugin-wasm.rs [29].
Вот шаблон, который демонстрирует работу плагина: rustwasm/rust-parcel-template [30].
Спасибо mvlabat [31] за новость.
Smithy progress update: how I decreased WebAssembly bundle size by 90% [32] — название немного вводит в заблуждение, потому что про уменьшение веса там, в сущности, только небольшой кусочек в духе "подкрутил настройки LLVM и использовал wasm-opt", но в статье можно найти другие полезные мелочи.
Вот, заодно, глава из wasm книги про уменьшение размера артефактов [33].
Calls between JavaScript and WebAssembly are finally fast [34] (обсуждение [35]) — Rust'а в самой статьей нет, но для Rust/WASM экосистемы событие все равно очень важное;
Multithreading Rust and Wasm [36] (обсуждение [37]) — подробный разбор ситуации с многопоточностью в Ржавчине и демо [38] с трассировкой лучей:
rust-industrial-io [39] — используя libiio [40], предоставляет доступ к промышленным сенсорам и приводам;
Начата разработка cortex-r-rt [41] — рантайм пакета для Cortex-R процессоров;
keypad [42] — драйвер для клавиатурных матричных схем;
Bluetooth Low Energy with Rust [43] (обсуждение [44]);
Со стабилизацией #[panic_handler]
в 1.30, стала возможна разработка Cortex-M приложений, работающих без ОС, с использованием стабильного компилятора.
shared-bus [45] (код [46]) — позволяет безопасно делить перефирию между устройствами при помощи мьютексов;
Embedded WG [47] (рабочая группа) растет: уже 27 разработчиков в 11 командах;
Библиотека линейной алгебры cgmath потихоньку отмирает в пользу nalgebra
[48];
Вышла новая версия игрового движка Amethyst 0.9 [49] (обсуждение [50]):
SpriteRender
компонент, упрощающий создание 2д игр и добавляющий поддержку батчинга;Также, идет работа над:
Новые заметки о ходе разработки головоломки RoboInstruct [58]:
Pyro — A fast, small and documented Entity Component System [63] (обсуждение [64]) — новая быстрая ECS, местами быстрее specs [65] за счет выкладывания данных в SoA, а не AoS [66]. Гифка демо [67]. Автор предупреждает что пока еще проект сырой и для серьезных затей лучше пока использовать specs;
The last two months in rustsim #1 [68] — что за пару последних месяцев случилось с nphysics [69], ncollide [70], nalgebra [71] и alga [72];
GLSL quasiquoting in Rust! [73] (обсуждение [74]) — квазицитирование кода шейдеров позволяет использовать GLSL напрямую из Rust кода с проверками через rustc на этапе сборки (текущая версия очень сырая и проверяет только форматирование, но будущие версии должны научиться делать более полезные семантические проверки);
Encrusted [75] (обсуждение [76]) — WASM интерпретатор Zork [77]-подобных текстовых приключений;
Events in Entity Component Systems [78] (обсуждение [79]) — подходы к организации системы событий на основе ECS с отдельным приветом specs
;
Споры о том, должен ли crates.io [80] начать поддерживать пространства имен/организации, почти не прекращаясь идут с самого появления cargo. Просто кину тут список из нескольких за последние годы:
Вопрос сложный, конца срачу не видно. Кто-то пару недель назад психанул и решил то ли заддосить, то ли заспамить репозиторий:
Несколько часов пользователи сервиса испытывали проблемы с доступом. По итогам сильно ничего не изменилось: ввели несколько дополнительных правил против откровенного спама, дискуссии возобновились с удвоенной силой, создав в процессе еще несколько Pre-RFC. Посмотрим, куда оно все в итоге придет.
withoutboats [89], в процессе исследования на что способно новое, еще не стабилизированное Pin API [90], написал экспериментальную библиотеку для сборки мусора — Shifgrethor [91] — и опубликовал серию статей о том как и почему она устроена:
Это не первая попытка реализовать ржавую GC библиотеку (когда-то в языке вообще были @
-указатели для этой цели), но от прошлых попыток эта отличается использованием нового механизма Pin
'ов.
Поскольку библиотека зависит от Pin API, она пока не может работать на стабильной Ржавчине. Лодочник несколько раз повторяет, что проект пока что чисто исследовательский и он даже не уверен где именно будет иметь смысл применять эту библиотеку — скорее всего для интеграции с GC других языков или реализации сложных структур данных.
Обсуждение Shifgrethor на IRLO [101].
Почему взять и создать универсальную библиотеку для 2D графики на все случаи жизни не получится? Очень занимательно, рекомендую полистать сами статьи и комментарии к ним.
Нико [109] опубликовал несколько заметок о том как NLL (что это такое? [110]) будет сразу встроен в следующую редакцию Rust'а (пока что его надо явно включать через feature(nll)
), о его реализации и проблемах, которые предстоит решить в будущих итерациях анализатора заимствований (borrowck):
Для желающих закопаться немного глубже есть еще URLO тема [115].
Даже по комментариям к прошлому ежемесячнику [117] видно что GUI — больное место Ржавчины. Очередная попытка заткнуть эту дыру в экосистеме: Azul [118] — функциональная IMGUI библиотека с кешированием состояния, использующая WebRender [119] для отрисовки (обсуждение [120]).
Подробности смотрите на сайте проекта: azul.rs [121].
#[global_allocator]
, так что желающие вернуть старый аллокатор могут подключить пакет jemallocator [126];target
директории жрут место на диске как не в себя;hashmap!{ 1 => 2, 2 => 3 }
;tokio
, hyper
и http
зависимости, улучшена производительность, появилась асинхронная раздача статических файлов и возможность настраивать используемый tokio-рантайм;По RFC довольно удобно наблюдать, в какую сторону движется язык, так что вот несколько интересных. В заголовке PRов есть ссылка "Rendered", по которой RFC доступен в удобочитаемой форме.
impl<T> ForeignTrait<LocalType> for ForeignType<T>
;uint<N>
и int<N>
целые типы;И вот еще несколько Pre-RFC обсуждений:
Это все, спасибо за внимание!
Если я не добавил какую-то важную ссылку или событие, смело закидывайте в комментарии. :)
КДПВ взята отсюда [215], остальные картинки из сайтов соответствующих проектов.
Автор: ozkriff
Источник [216]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/programmirovanie/298345
Ссылки в тексте:
[1] обсуждение: https://www.reddit.com/r/rust/comments/9rbxnv/announcing_rust_130/
[2] хабропереводе: https://habr.com/post/428073/
[3] редакции (edition) "Rust2018": https://rust-lang-nursery.github.io/edition-guide/rust-2018/index.html
[4] что за "редакции"?: https://rust-lang-nursery.github.io/edition-guide/editions/index.html
[5] всех желающих приглашают подключаться к тестированию бета версии 1.31 и cargo fix: https://blog.rust-lang.org/2018/10/30/help-test-rust-2018.html
[6] RustRush 2018: https://rustrush.ru
[7] список докладчиков: https://rustrush.ru/speakers
[8] программа: https://rustrush.ru/program
[9] продажа основной партии билетов: https://rustrush.ru/buy
[10] Программа: https://rustrush.ru/program.html
[11] Call for Papers: https://www.papercall.io/rustrush
[12] Programming WebAssembly with Rust — The Book: https://medium.com/@KevinHoffman/programming-webassembly-with-rust-the-book-7c4a890fcf97
[13] обсуждение: https://www.reddit.com/r/rust/comments/9jorrw/programming_webassembly_with_rust_the_book
[14] WebAssembly’s post-MVP future: A cartoon skill tree: https://hacks.mozilla.org/2018/10/webassemblys-post-mvp-future/
[15] хаброперевод: "Будущее WebAssembly в виде «дерева навыков»": https://habr.com/hub/webassembly/
[16] Ruukh: https://sharadchand.com/2018/10/03/ruukh-framework.html
[17] код: https://github.com/csharad/ruukh
[18] обсуждение: https://www.reddit.com/r/rust/comments/9l0xho/introducing_ruukh_framework/
[19] Draco: https://github.com/utkarshkukreti/draco
[20] обсуждение: https://www.reddit.com/r/rust/comments/9rkvec/draco_a_rust_library_for_building_client_side_web/
[21] Elm: https://elm-lang.org/
[22] Twiggy 0.3.0: https://users.rust-lang.org/t/announcing-twiggy-0-3-0/20966
[23] код: https://github.com/rustwasm/twiggy
[24] руководство пользователя: https://rustwasm.github.io/twiggy/
[25] parcel: https://github.com/parcel-bundler/parcel
[26] дружит с растом: https://medium.com/@devongovett/parcel-v1-5-0-released-source-maps-webassembly-rust-and-more-3a6385e43b95
[27] вышел: https://github.com/rustwasm/wasm-bindgen/issues/182
[28] wasm_bindgen: https://github.com/rustwasm/wasm-bindgen
[29] parcel-plugin-wasm.rs: https://github.com/catsigma/parcel-plugin-wasm.rs
[30] rustwasm/rust-parcel-template: https://github.com/rustwasm/rust-parcel-template
[31] mvlabat: https://habr.com/users/mvlabat/
[32] Smithy progress update: how I decreased WebAssembly bundle size by 90%: https://medium.com/@robert.balicki_2494/smithy-progress-update-how-i-decreased-webassembly-bundle-size-by-90-e7fe194b2f58
[33] глава из wasm книги про уменьшение размера артефактов: https://rustwasm.github.io/book/game-of-life/code-size.html
[34] Calls between JavaScript and WebAssembly are finally fast : https://hacks.mozilla.org/2018/10/calls-between-javascript-and-webassembly-are-finally-fast-%F0%9F%8E%89/
[35] обсуждение: https://www.reddit.com/r/rust/comments/9mh0t7/calls_between_javascript_and_webassembly_are/
[36] Multithreading Rust and Wasm: https://rustwasm.github.io/2018/10/24/multithreading-rust-and-wasm.html
[37] обсуждение: https://www.reddit.com/r/rust/comments/9qow61/multithreading_rust_and_wasm
[38] демо: https://rustwasm.github.io/wasm-bindgen/exbuild/raytrace-parallel/
[39] rust-industrial-io: https://github.com/fpagliughi/rust-industrial-io
[40] libiio: https://github.com/analogdevicesinc/libiio
[41] cortex-r-rt: https://github.com/gregokent/cortex-r-rt
[42] keypad: https://github.com/e-matteson/keypad
[43] Bluetooth Low Energy with Rust: https://www.reddit.com/r/rust/comments/9mtjj4/bluetooth_low_energy_with_rust
[44] обсуждение: https://www.reddit.com/r/rust/comments/9mtjj4/bluetooth_low_energy_with_rust/
[45] shared-bus: https://blog.rahix.de/001-shared-bus
[46] код: https://github.com/Rahix/shared-bus
[47] Embedded WG: https://github.com/rust-embedded/wg
[48] Библиотека линейной алгебры cgmath потихоньку отмирает в пользу nalgebra
: https://github.com/amethyst/amethyst/issues/942
[49] Amethyst 0.9: https://www.amethyst.rs/blog/release-0-9
[50] обсуждение: https://www.reddit.com/r/rust/comments/9qn1e6/amethyst_09_has_been_released/
[51] RON: https://github.com/ron-rs/ron
[52] randomPoison/amethyst-editor: https://github.com/randomPoison/amethyst-editor
[53] amethyst-editor-sync: https://github.com/randomPoison/amethyst-editor-sync
[54] улучшением процесса подготовки ресурсов (assets pipelone): https://github.com/amethyst/amethyst/issues/875
[55] новой сетевой подсистемой: https://github.com/amethyst/laminar
[56] новой подсистемой отрисовки: https://github.com/rustgd/rendy
[57] улучшением интеграции физического движка nphysics с ECS: https://github.com/rustsim/nphysics-ecs
[58] RoboInstruct: https://twitter.com/bigabgames
[59] Concept Art Revealed: https://blog.roboinstruct.us/2018/10/05/concept-art.html
[60] Early Game Discoveries: https://blog.roboinstruct.us/2018/10/12/early-game-discoveries.html
[61] Introduce Yourself: https://blog.roboinstruct.us/2018/10/19/introduce-yourself.html
[62] Big Changes For The Early Game: https://blog.roboinstruct.us/2018/10/26/polishing-the-learn.html
[63] Pyro — A fast, small and documented Entity Component System: https://maikklein.github.io/pyro-ecs/
[64] обсуждение: https://www.reddit.com/r/rust/comments/9srhuc/pyro_a_fast_small_and_documented_entity_component
[65] specs: https://github.com/slide-rs/specs
[66] в SoA, а не AoS: https://software.intel.com/en-us/articles/memory-layout-transformations
[67] Гифка демо: https://giant.gfycat.com/GaseousExhaustedBlueshark.webm
[68] The last two months in rustsim #1: https://www.rustsim.org/blog/2018/11/01/this-month-in-rustsim/
[69] nphysics: https://github.com/rustsim/nphysics
[70] ncollide: https://github.com/rustsim/ncollide
[71] nalgebra: https://github.com/rustsim/nalgebra
[72] alga: https://github.com/rustsim/alga
[73] GLSL quasiquoting in Rust!: https://phaazon.net/blog/glsl-quasiquoting
[74] обсуждение: https://www.reddit.com/r/rust/comments/9lo9s4/glsl_quasiquoting_in_rust/
[75] Encrusted: https://sterlingdemille.com/encrusted/
[76] обсуждение: https://www.reddit.com/r/rust/comments/9ll5nu/encrusted_a_zmachine_interpreter_for_text/
[77] Zork: https://ru.wikipedia.org/wiki/Zork
[78] Events in Entity Component Systems: https://medium.com/@casual.evil52/events-in-entity-component-systems-22dc5107ed81
[79] обсуждение: https://www.reddit.com/r/rust_gamedev/comments/9nmx1f/events_in_entity_component_systems_includes_talk
[80] crates.io: https://crates.io/
[81] https://users.rust-lang.org/t/should-people-be-allowed-to-reserve-crate-names/8360: https://users.rust-lang.org/t/should-people-be-allowed-to-reserve-crate-names/8360
[82] https://www.reddit.com/r/rust/comments/6u52po/name_squating_on_cratesio: https://www.reddit.com/r/rust/comments/6u52po/name_squating_on_cratesio
[83] https://www.reddit.com/r/rust/comments/86yr2x/python_pep_regarding_package_names_abandoned: https://www.reddit.com/r/rust/comments/86yr2x/python_pep_regarding_package_names_abandoned
[84] https://www.reddit.com/r/rust/comments/9aaanw/cargo_crate_name_reservation_spam: https://www.reddit.com/r/rust/comments/9aaanw/cargo_crate_name_reservation_spam
[85] https://www.reddit.com/r/rust/comments/9dole9/proposal_crate_squatting_on_cratesio: https://www.reddit.com/r/rust/comments/9dole9/proposal_crate_squatting_on_cratesio
[86] https://internals.rust-lang.org/t/crates-io-squatting/8031: https://internals.rust-lang.org/t/crates-io-squatting/8031
[87] Update on the October 15, 2018 incident on crates.io: https://blog.rust-lang.org/2018/10/19/Update-on-crates.io-incident.html
[88] обсуждение: https://www.reddit.com/r/rust/comments/9pjmjz/update_on_the_october_15_2018_incident_on_cratesio/
[89] withoutboats: https://github.com/withoutboats
[90] Pin API: https://github.com/rust-lang/rfcs/blob/master/text/2349-pin.md
[91] Shifgrethor: https://github.com/withoutboats/shifgrethor
[92] Shifgrethor I: Garbage collection as a Rust library: https://boats.gitlab.io/blog/post/shifgrethor-i/
[93] обсуждение: https://www.reddit.com/r/rust/comments/9ozaut/shifgrethor_i_garbage_collection_as_a_rust_library/
[94] Shifgrethor II: Notes on tracing garbage collectors: https://boats.gitlab.io/blog/post/shifgrethor-ii/
[95] обсуждение: https://www.reddit.com/r/rust/comments/9qggzd/shifgrethor_ii_notes_on_tracing_garbage_collectors/
[96] трассирующие сборщики мусора: https://en.wikipedia.org/wiki/Tracing_garbage_collection
[97] Shifgrethor III: Rooting: https://boats.gitlab.io/blog/post/shifgrethor-iii/
[98] обсуждение: https://www.reddit.com/r/rust/comments/9r23c1/shifgrethor_iii_rooting/
[99] Shifgrethor IV: Tracing: https://boats.gitlab.io/blog/post/shifgrethor-iv
[100] обсуждение: https://www.reddit.com/r/rust/comments/9tagcd/shifgrethor_iv_tracing/
[101] Обсуждение Shifgrethor на IRLO: https://internals.rust-lang.org/t/shifgrethor-garbage-collection-as-a-rust-library/8597
[102] A crate I want: 2d graphics: https://raphlinus.github.io/rust/graphics/2018/10/11/2d-graphics.html
[103] обсуждение: https://www.reddit.com/r/rust/comments/9nhhh8/a_crate_i_want_2d_graphics
[104] Following up on the 2d graphics in Rust discussion: https://nical.github.io/posts/rust-2d-graphics-01.html
[105] обсуждение: https://www.reddit.com/r/rust/comments/9o71i0/following_up_on_the_2d_graphics_in_rust_discussion/
[106] 2d graphics in Rust discussion — A look at GPU memory management: https://nical.github.io/posts/rust-2d-graphics-02.html
[107] обсуждение: https://www.reddit.com/r/rust/comments/9s8dk9/2d_graphics_in_rust_discussion_a_look_at_gpu
[108] Non-lexical lifetimes: https://github.com/rust-lang/rust/issues/43234
[109] Нико: https://github.com/nikomatsakis
[110] что это такое?: http://smallcultfollowing.com/babysteps/blog/2016/04/27/non-lexical-lifetimes-introduction/
[111] MIR-based borrowck is almost here: http://smallcultfollowing.com/babysteps/blog/2018/10/31/mir-based-borrowck-is-almost-here
[112] обсуждение: https://www.reddit.com/r/rust/comments/9sz54u/mirbased_borrowck_is_almost_here/
[113] After NLL: Interprocedural conflicts: http://smallcultfollowing.com/babysteps/blog/2018/11/01/after-nll-interprocedural-conflicts
[114] обсуждение: http://after_nll_interprocedural_conflicts
[115] URLO тема: https://users.rust-lang.org/t/blog-post-series-after-nll-whats-next-for-borrowing-and-lifetimes/21864
[116] Azul: https://azul.rs
[117] комментариям к прошлому ежемесячнику: https://habr.com/post/425005/
[118] Azul: https://github.com/maps4print/azul
[119] WebRender: https://github.com/servo/webrender
[120] обсуждение: https://www.reddit.com/r/rust/comments/9seb0q/azul_a_free_functional_imguioriented_gui_framework/
[121] azul.rs: https://azul.rs/
[122] обновление Intellij-rust IDE: https://intellij-rust.github.io/2018/10/22/changelog-85.html
[123] gif демо: https://twitter.com/vlad20012/status/1056129735921713152
[124] jemalloc: http://jemalloc.net
[125] удален из стандартной библиотеки в пользу "системного" аллокатора: https://www.reddit.com/r/rust/comments/9twam5/jemalloc_was_just_removed_from_the_standard/
[126] пакет jemallocator: https://crates.io/crates/jemallocator
[127] TravisCI выкатил поддержку Windows сборок, Rust вошел в тройку изначально поддерживаемых языков: https://blog.travis-ci.com/2018-10-11-windows-early-release
[128] Writing an OS in Rust: Hardware Interrupts: https://os.phil-opp.com/hardware-interrupts/
[129] обсуждение: https://www.reddit.com/r/rust/comments/9qd9cc/writing_an_os_in_rust_hardware_interrupts/
[130] Should you learn C to “learn how the computer works”?: https://words.steveklabnik.com/should-you-learn-c-to-learn-how-the-computer-works
[131] обсуждение в /r/programming: https://www.reddit.com/r/programming/comments/9kruju/should_you_learn_c_to_learn_how_the_computer_works/
[132] Oxidizing Python: Speeding up URL quoting by 10x using Rust: https://tech.blue-yonder.com/oxidizing-python-speeding-up-urlquoting-by-using-rust/
[133] обсуждение: https://www.reddit.com/r/rust/comments/9me3ex/oxidizing_python_speeding_up_urlquoting_by_10x/
[134] My release checklist for Rust programs: https://dev.to/sharkdp/my-release-checklist-for-rust-programs-1m33
[135] обсуждение: https://www.reddit.com/r/rust/comments/9s3gxf/my_release_checklist_for_rust_programs/
[136] Towards fearless SIMD: https://raphlinus.github.io/rust/simd/2018/10/19/fearless-simd.html
[137] обсуждение: https://www.reddit.com/r/rust/comments/9pmwrv/towards_fearless_simd/
[138] Ральф: https://en.wikipedia.org/wiki/Raph_Levien
[139] Notes on Type Layouts and ABIs in Rust: https://gankro.github.io/blah/rust-layouts-and-abis/
[140] обсуждение: https://www.reddit.com/r/rust/comments/9mzrev/notes_on_type_layouts_and_abis_in_rust/
[141] ABI: https://ru.wikipedia.org/wiki/%D0%94%D0%B2%D0%BE%D0%B8%D1%87%D0%BD%D1%8B%D0%B9_%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9
[142] Rust, Battlecode, and Halite: a beginner's experience with AI programming contests: https://www.reddit.com/r/rust/comments/9r48v3/rust_battlecode_and_halite_a_beginners_experience/
[143] в соревнованиях по программированию ИИ: https://halite.io/
[144] Rust has a static garbage collector: https://words.steveklabnik.com/borrow-checking-escape-analysis-and-the-generational-hypothesis
[145] обсуждение: https://www.reddit.com/r/rust/comments/9n0shp/rust_has_a_static_garbage_collector
[146] Future directions for cbindgen (rust-ffi): http://dreamingofbits.com/post/future-directions-for-cbindgen-rust-ffi/
[147] обсуждение: https://www.reddit.com/r/rust/comments/9n7qt8/future_directions_for_cbindgen_rustffi/
[148] cbindgen: https://github.com/eqrion/cbindgen
[149] Qt applications with Cargo: https://www.vandenoever.info/blog/2018/10/30/building_qt_apps_with_cargo.html
[150] More Space For Cargo: https://www.reddit.com/r/rust/comments/9owc1o/more_space_for_cargo/
[151] @llogiq: https://twitter.com/llogiq
[152] A Case Study in Heaptrack: https://speice.io/2018/10/case-study-optimization.html
[153] обсуждение: https://www.reddit.com/r/rust/comments/9me754/a_case_study_in_heaptrack/
[154] системного аллокатора: https://doc.rust-lang.org/std/alloc/struct.System.html
[155] flamegraph: http://www.brendangregg.com/flamegraphs.html
[156] Хостинг документации docs.rs переехал под крыло организации rust-lang-nursery: https://www.reddit.com/r/rust/comments/9q41wv/docsrs_is_now_part_of_the_rustlangnursery/
[157] Problems Scaling A Large Multi-Crate Rust Project: https://robert.ocallahan.org/2018/10/problems-scaling-large-multi-crate-rust.html
[158] обсуждение: https://www.reddit.com/r/rust/comments/9rb4fq/problems_scaling_a_large_multicrate_rust_project/
[159] What cool stuff have you learned about Rust recently?: https://www.reddit.com/r/rust/comments/9pb3ah/what_cool_stuff_have_you_learned_about_rust/
[160] reFORM: https://bitbucket.org/benruyl/reform/src/master/
[161] обсуждение: https://www.reddit.com/r/rust/comments/9kr80h/announcing_reform_a_symbolic_manipulation_toolkit/
[162] FORM: https://en.wikipedia.org/wiki/FORM_(symbolic_manipulation_system)
[163] Noria: https://www.usenix.org/conference/osdi18/presentation/gjengset
[164] обсуждение: https://www.reddit.com/r/rust/comments/9mk404/noria_a_highperformance_web_application_backend/
[165] код: https://github.com/mit-pdos/noria
[166] bible.rs: https://bible.rs
[167] обсуждение: https://www.reddit.com/r/rust/comments/9n3dji/biblers_a_web_application_written_in_rust_using/
[168] код: https://github.com/DSpeckhals/bible.rs
[169] actix: https://github.com/actix/actix
[170] diesel: https://github.com/diesel-rs/diesel
[171] sugar-rs: https://github.com/harryfei/sugar-rs
[172] обсуждение: https://www.reddit.com/r/rust/comments/9o9xqe/sugarrs_rust_syntax_sugar_collections/
[173] reflow: https://github.com/net-reflow/reflow
[174] обсуждение: https://www.reddit.com/r/rust/comments/9qvn97/reflow_a_systemlevel_proxy_switcher_a_routing/
[175] hashbrown: https://github.com/Amanieu/hashbrown
[176] обсуждение: https://www.reddit.com/r/rust/comments/9sn4ze/github_amanieuhashbrown_a_faster_hashmap_for_rust/
[177] SwissTable: https://abseil.io/blog/20180927-swisstables
[178] Formality: https://github.com/MaiaVictor/formality
[179] обсуждение: https://www.reddit.com/r/rust/comments/9p4fkl/formality_an_efficient_programming_language_and/
[180] Coq: https://ru.wikipedia.org/wiki/Coq
[181] Idris: https://ru.wikipedia.org/wiki/Idris_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)
[182] hex: https://github.com/bytesnake/hex
[183] обсуждение: https://www.reddit.com/r/rust/comments/9mpfss/hex_a_personal_music_library_written_in_rust
[184] soup: https://gitlab.com/pwoolcoc/soup
[185] обсуждение: https://www.reddit.com/r/rust/comments/9tg7fj/beautifulsoup_for_rust/
[186] BeautifulSoup: https://www.crummy.com/software/BeautifulSoup/
[187] html5ever: https://github.com/servo/html5ever
[188] pest 2.0: https://github.com/pest-parser/pest/releases/tag/v2.0.0
[189] обсуждение: https://www.reddit.com/r/rust/comments/9l6kbz/pest_parser_20_now_with_better_performance_and/
[190] код: https://github.com/pest-parser/pest
[191] Alacritty: https://github.com/jwilm/alacritty
[192] может работать в Windows: https://www.reddit.com/r/rust/comments/9ove68/alacritty_now_works_on_windows
[193] картинка: https://i.redd.it/2fh5ai6lbos11.png
[194] slotmap 0.3: https://github.com/orlp/slotmap
[195] обсуждение: https://www.reddit.com/r/rust/comments/9s0hbk/slotmap_03_released_support_for_custom_key_types/
[196] что такое Slot Map?: http://seanmiddleditch.com/data-structures-for-game-developers-the-slot-map/
[197] custom key types: https://docs.rs/slotmap/0.3.0/slotmap/#custom-key-types
[198] SecondaryMap: https://docs.rs/slotmap/0.3.0/slotmap/secondary/struct.SecondaryMap.html
[199] Gotham 0.3: https://gotham.rs/blog/release/2018/10/29/gotham-0.3.html
[200] сайт: https://gotham.rs
[201] обсуждение: https://www.reddit.com/r/rust/comments/9sf64x/announcing_gotham_v03/
[202] libdiffuzz: https://github.com/Shnatsel/libdiffuzz
[203] санитайзеру памяти: https://clang.llvm.org/docs/MemorySanitizer.html
[204] переписан на Rust: https://www.reddit.com/r/rust/comments/9p8upx/libdiffuzz_the_tool_that_discovered/
[205] RFC 2436 Formatting guidelines: https://github.com/rust-lang/rfcs/pull/2436
[206] RFC 2476 Clippy 1.0: https://github.com/rust-lang/rfcs/pull/2476
[207] RFC 2457 Allow non-ASCII identifiers: https://github.com/rust-lang/rfcs/pull/2457
[208] RFC 2451 Re-Rebalancing Coherence: https://github.com/rust-lang/rfcs/pull/2451
[209] RFC 2581 Generic integers: https://github.com/rust-lang/rfcs/pull/2581
[210] IRLO тема о необходимости выкинуть Windows XP из списка поддерживаемых платформ: https://internals.rust-lang.org/t/consider-dropping-support-for-windows-xp/8745
[211] A new symbol mangling scheme: https://www.reddit.com/r/rust/comments/9kizz2/prerfc_a_new_symbol_mangling_scheme_post_your/
[212] Идея о документировании карго фич: https://phaazon.net/blog/rust-features-documentation
[213] Научить пакет "log" структурному журналированию: https://github.com/rust-lang-nursery/log/pull/296
[214] обсуждение: https://www.reddit.com/r/rust/comments/9nzag7/an_rfc_for_structured_logging_in_the_log_crate
[215] отсюда: https://www.meetup.com/Rust-Tampa/photos/27304433/455105061/
[216] Источник: https://habr.com/post/429038/?utm_campaign=429038
Нажмите здесь для печати.