Optimized fixed ints based on Cython #97
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Current design is based on metaclasses,
int
-based classes etc. All of these things slow down object construction which is crucial for performance (see also #95)int
that are within unsigned 64-bit range (no negative numbers) and arbitraryFixedInt
sOn the other hand
long long
accepts only signed 64-bit range.MALDUCK_PYTHON_INTS
environment variable or when import of native extension fails.TODO:
malduck
tosrc
. During local development, Python imports package from local directory and fallbacks to Python implementation when.so
is not inmalduck/ints
directory.