#prog #rust
Если некоторое выражение протайпчекано, то для тайпчека его составляющей достаточно взять результаты тайпчека и выделить нужную часть. Посему хранить результаты тайпчека имеет смысл только у выражений самого верхнего уровня. Логично? Логично. Однако до этого PR rustc хранил результаты тайпчека для всего, дублируя информацию ненужным образом. Внесение этого изменения не только ускорило компиляцию, но и резко снизило объём инкрементального кеша на диске. Что интересно, изменить потребовалось всего одну строчку.
github.com/rust-lang/rust/pull/111026
Если некоторое выражение протайпчекано, то для тайпчека его составляющей достаточно взять результаты тайпчека и выделить нужную часть. Посему хранить результаты тайпчека имеет смысл только у выражений самого верхнего уровня. Логично? Логично. Однако до этого PR rustc хранил результаты тайпчека для всего, дублируя информацию ненужным образом. Внесение этого изменения не только ускорило компиляцию, но и резко снизило объём инкрементального кеша на диске. Что интересно, изменить потребовалось всего одну строчку.
github.com/rust-lang/rust/pull/111026
GitHub
Only cache typeck results if it's the typeck root by compiler-errors · Pull Request #111026 · rust-lang/rust
context: https://rust-lang.zulipchat.com/#narrow/stream/241847-t-compiler.2Fwg-incr-comp/topic/incr_comp_query_cache_promotion.20taking.20forever
Basically, typeck children just copy the typeck res...
Basically, typeck children just copy the typeck res...
🔥16🎉6🤔2
#prog #rust
Improve niche placement by trying two strategies and picking the better result
Ровно то, что написано на упаковке. Из приятного в добавленных тестах:
То есть причин использовать библиотеки вроде beef стало немного меньше.
Improve niche placement by trying two strategies and picking the better result
Ровно то, что написано на упаковке. Из приятного в добавленных тестах:
assert_eq!(size_of::<Cow<'static, str>>(), size_of::<String>());
То есть причин использовать библиотеки вроде beef стало немного меньше.
GitHub
Improve niche placement by trying two strategies and picking the better result by the8472 · Pull Request #108106 · rust-lang/rust
Fixes #104807
Fixes #105371
Determining which sort order is better requires calculating the struct size (so we can calculate the niche offset). But that in turn depends on the field order, so happe...
Fixes #105371
Determining which sort order is better requires calculating the struct size (so we can calculate the niche offset). But that in turn depends on the field order, so happe...
👍3
Блог*
#prog #rust Если некоторое выражение протайпчекано, то для тайпчека его составляющей достаточно взять результаты тайпчека и выделить нужную часть. Посему хранить результаты тайпчека имеет смысл только у выражений самого верхнего уровня. Логично? Логично.…
Ну серьёзно. В первичных бенчмарках в топе улучшений serde-derive, cargo и clap
🔥7
#prog #article
We designed our initial solution as a distributed system using serverless components (for example, AWS Step Functions or AWS Lambda), which was a good choice for building the service quickly. In theory, this would allow us to scale each service component independently. However, the way we used some components caused us to hit a hard scaling limit at around 5% of the expected load. Also, the overall cost of all the building blocks was too high to accept the solution at a large scale.
We designed our initial solution as a distributed system using serverless components (for example, AWS Step Functions or AWS Lambda), which was a good choice for building the service quickly. In theory, this would allow us to scale each service component independently. However, the way we used some components caused us to hit a hard scaling limit at around 5% of the expected load. Also, the overall cost of all the building blocks was too high to accept the solution at a large scale.
🤡4
Forwarded from Jem
Амазон выстрелил себе в ногу анти-рекламой лямбд 🤡
Aboutamazon
Entertainment
We create and provide access to world-class entertainment through Amazon Originals, Prime Video, Audible, Amazon Games, Twitch, Amazon Music, Prime Gaming, and more. Amazon’s digital entertainment products enable customers to access the latest apps and games…
#prog
TIL, что в спеке HTTP/2 в число кодов, сигнализирующих о закрытии соединения, входит ENHANCE_YOUR_CALM
TIL, что в спеке HTTP/2 в число кодов, сигнализирующих о закрытии соединения, входит ENHANCE_YOUR_CALM
😁9🥰2🤡1
TIL, что у Джона Траволты была музыкальная карьера.
Причём в качестве певца.
И его пластинки даже продавались.
Причём в качестве певца.
И его пластинки даже продавались.
👍2🤡2❤🔥1🍌1