bed-reader
A library for easy, fast, and efficient reading & writing of PLINK Bed files (by fastlmm)
anyinput
By CarlKCarlK
bed-reader | anyinput | |
---|---|---|
8 | 1 | |
67 | 21 | |
- | - | |
9.4 | 10.0 | |
7 days ago | over 1 year ago | |
Rust | Rust | |
Apache License 2.0 | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
bed-reader
Posts with mentions or reviews of bed-reader.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-10-10.
-
anyinput -- proc macro to easily create functions that accept any type of string-, path-, iterator-, or array-like inputs
I have trouble remembering the direct syntax for iterators and arrays. So, the macro is especially useful using when nesting inside them. For example, in the bed-reader genomics crate, I was apply to replace dozens of functions like:
-
Can I count on LLVM optimizing away simple clone calls?
I'm creating a genomics-related crate. When a user asks for a field of a struct, I clone it. If the field is never used again, then an optimizer could move instead of clone. Can I expect this to happen?
-
Trying to make a nice, elegant Rust API for the Bed-Reader Genomics Tool
Thanks! That works great and is now checked in.
-
Is there a crate to download files when needed (using, say, SHA256)?
u/HeroicKatora, in Python I use Pooch to create a function called "sample_file" that returns the path to a sample file. (Behind the scenes, it downloads the file if needed). The function lets me write Python usage examples like this:
-
Solution to: A puzzle: Any nice way to multithread work in order?
How much does this matter? Here are benchmarks from fastlmm/bed-reader at bed-writer (github.com):
-
A puzzle: Any nice way to multithread work in order?
For our Bed-Reader open-source genomics tool, it would be great to speed up writing to a file. Writing is usually CPU-bound because each column of a big array (for example, 1M x 100) must be processed before output. A single-threaded, simplified writer is below and on the Rust Playground.
-
Python extensions in Rust -- Lessons learned from upgrading a bioinformatics package
Thank you Rust & Rayon for letting Bed-Reader escape from C++/OpenMP runtime compatibility hell!
anyinput
Posts with mentions or reviews of anyinput.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-10-10.
-
anyinput -- proc macro to easily create functions that accept any type of string-, path-, iterator-, or array-like inputs
I just tried the various code versions in Compiler Explorer. From a quick glance, they all produce the same compiled code. An advantage of creating two generics here instead of one more complex one is that programming the macro is more recursive and simpler. This allows to macro to handle, for example, a test case called "complex" with type AnyIter>>.
What are some alternatives?
When comparing bed-reader and anyinput you can also consider the following projects:
pariter - Parallel iterator processing library for Rust
pooch - A friend to fetch your data files
bedwrite