Comments (2)
I have been thinking about this some more after our discussion. If I were to read a piece of code that uses bits::sel() or bit_magic::i1BP()
and I'm not very familiar with the library I would not necessarily know what the function does.
the same goes for bits::lo
and bits::hi
. I understand that these function would make the code very concise and neat looking. but would probably require another comment above the line to explain what it does. for example
/* return the position in the final word */ return bits::sel(x,i);
is less descriptive and requires a comment compared to
return bits::selectWord(x,i)
or something similar.
the same case could be made for a few other functions. for example bits::cnt
could be renamed to bits::count
or similar.
another example might potentially be the size()
function. I realize that this is a standard c++ container requirement but in succinct data structure land kind of implies the "space usage" not the length especially since there are no real "space usage" functions in the int vector class. the cheat sheet will probably help to point to the "get_size_in_bytes() functions. (maybe also remove the unnecessary get_ prefix here?)
from sdsl-lite.
- have removed the
get_
prefix inget_size...
methods. - we stay with
bits::cnt
,bits::sel
,bits::lo
,bits::hi
, sinceselectWord
also don't tell unexperienced users what is done. All renamed methods are also explained on the cheat sheet so that no comments are necessary in the client source.
from sdsl-lite.
Related Issues (20)
- Decompression of Integer Vectors
- <HTML_FORMAT> in sdsl tutorial expl-20 can't be visualized
- block compression
- Faster than libdivsufsort new library, impressive gains : libsais
- Is the technology in your paper(Improved and extended locating functionality on compressed suffix arrays,2015) used in this library?
- old http links in rrr_vector benchmark
- Using compressed integer vectors
- Maximum limit on reference and query string length
- New release for conda
- 2.1.1 release missing pkgconfig .pc for libsdsl.a
- construct_lcp.cpp KEY_TEXT warning
- problem with serialization of a sd_vector HOT 2
- Can I use the clang compiler for seqwish? HOT 1
- .gitignore HOT 1
- de5db3c8beeea262c163c94fcacd938e57967ece HOT 1
- Linking SDSL into a project
- The code uses divsufsort64.h that isn't installed by the latest revision of libdivsufsort
- Please do not install googletest
- Unclear how to run tests
- 'bits::write_int' function definition mismatches its declaration
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sdsl-lite.