-
Notifications
You must be signed in to change notification settings - Fork 83
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[DISCUSSION] Library Upgrade - Part 2 #64
Comments
The next step of BLS signature API is to rewrite some performance hot spots with Cython or gmp lib. How do these kinds of optimizations fit into the upgrade? |
My instinct is that it takes a while to even list all the breaking changes you might like to have in a major version upgrade. Since the performance bump is important and urgent (I'm assuming), we should just work on that first while we think about other breaking changes we might want to add to the list for v2. |
Ok I will stall making progress on the |
What is wrong?
The first part of the upgrade is over, where the
fields
used by different curves were generalized into thefields API
. Regarding the 2nd part of the upgrade, this is what I had in mind.bn128
,bls12_381
,optimized_bn128
,optimized_bls12_381
) and generalize it into thecurves API
.curves API
, all the common functionalities amongst all the above mentioned curves go into theclass BaseCurve
andclass OptimizedBaseCurve
. And the respective curves wouldinherit
these base classes.subcurve implementation
.__init__.py
so that users can directly import the respectivecurve object
.Scenario 1
Scenario 2
Here,
Scenario 1
won't be abreaking API
, butScenario 2
would be abreaking API
for the further releases.How can it be fixed
/cc @pipermerriam @carver @ChihChengLiang @hwwhww
The text was updated successfully, but these errors were encountered: