{"id":13520371,"url":"https://github.com/tripulse/rust-shit","last_synced_at":"2025-03-31T16:31:19.789Z","repository":{"id":144476477,"uuid":"415013325","full_name":"tripulse/rust-shit","owner":"tripulse","description":"Proof of the terrible consequences of amateur library design prevalent in the Rust community.","archived":false,"fork":false,"pushed_at":"2021-11-12T18:54:54.000Z","size":7,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-08-02T05:23:16.322Z","etag":null,"topics":["blazingly-fast","cpu-intensive","cross-platform","fast","fast-io","fearless-concurrency","flexible","iterator","memory-safety","minimal","multi-threaded","optimized","parallel","performant","rayon","robust","rust","rust-lang","slow"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tripulse.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2021-10-08T14:15:11.000Z","updated_at":"2024-07-20T23:09:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"1dd00ad4-4f58-4fef-b2bf-f3fbe4f39e63","html_url":"https://github.com/tripulse/rust-shit","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tripulse%2Frust-shit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tripulse%2Frust-shit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tripulse%2Frust-shit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tripulse%2Frust-shit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tripulse","download_url":"https://codeload.github.com/tripulse/rust-shit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222670691,"owners_count":17020513,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blazingly-fast","cpu-intensive","cross-platform","fast","fast-io","fearless-concurrency","flexible","iterator","memory-safety","minimal","multi-threaded","optimized","parallel","performant","rayon","robust","rust","rust-lang","slow"],"created_at":"2024-08-01T05:02:18.642Z","updated_at":"2024-11-02T03:31:25.653Z","avatar_url":"https://github.com/tripulse.png","language":"Rust","readme":"Ensure that you have the furrylang toolchain installed.\nThen invoke `cargo build --release` to build in ***release*** mode.\n\nThen `./target/build/vlr-rs \u003c /dev/urandom \u003e /dev/null`, to make your CPU have hiccups.\n\n## FAQ\n- Why are you using `(0..8).into_par_iter()` instead of `(0..8)`, `(0..8).into_iter()`, `(0..8).iter()`? Isn't that \"abusing\" parallelism?\n  \n  First, `Range\u003cT\u003e` doesn't have a `iter()` method.\n  Second, `Range\u003cT\u003e` is an iterator already so `into_iter()` is redundant here.\n  Third, `ParallelIterator::flat_map()` requires a closure that returns a type satisfying `IntoParallelIterator` trait\n  which, for `Map\u003cT\u003e`, is not implemented [(E0277)](https://doc.rust-lang.org/error-index.html#E0277). Thus we must use\n  `.into_par_iter()` in order to comply trait bounds.\n\n  So even if it's labelled as \"abuse\", this is what the API forces.\n\n- Why are you `collect()`ing? Can't you use `collect_to_vec()` or `.enumerate().for_each()` and collect to a custom buffer?\n  \n  First, to be a little bit fair to the C code. Second, no I can't because `IntoIndexedParallelIterator` is not implemented for\n  `FlatMap` nor there is a way to turn it so.\n\n# Legal\nThis work is composed by means of attacking the Rust programming language community to point out their\namateurness in the field of parallel computing. I beg of you rustaceans, to stop conducting these actions\nand pollute the field of computer science. Thank you.\n","funding_links":[],"categories":["Rust"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftripulse%2Frust-shit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftripulse%2Frust-shit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftripulse%2Frust-shit/lists"}