-
-
Notifications
You must be signed in to change notification settings - Fork 28
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
Autogenerate headers #55
Comments
Does #56 solve your problem? |
It gets better. Why should we keep such a big |
This statement is simply not true:
With #56 we don't have to worry either: the declarations from |
@videlec Can you explain better what you have in mind? Are you thinking about a script to remove duplicate declarations...? |
One of
|
Really? Do you volunteer for that? It's a waste of time for zero gain. |
Also, there are two further issues with your proposal:
|
The main point is to make |
But why? That does not fix any problem but it does create new problems. So it's a negative move for me. |
Ideally, it should be reasonably up-to-date. Now and then, it will need to be updated. |
This seems to be the main point of disagreement. Jeroen wants to keep updating Vincent wants to auto-generate paridecl from the C headers. I'm not going to enter in the merit of this proposal (my opinion is that this is reasonable, even without a proper C parser). I just want to give my 2 cents by saying that, as long as we do not autogenerate it, it seems wasteful to do a manual cleanup. Better to have the largest possible |
I am not discussing now how Different pari versions have different functions (and possible same functions with different signatures). This is the very reason of the existence of
|
Different pari versions have different functions (and possible same functions with different signatures). This is the very reason of the existence of auto_paridecl.pxd. My wish is to minimize paridecl.pxd because after #56 most of the declarations are actually overriden by auto_paridecl.pxd (and you have to read the last line of paridecl.pxd to understand that).
Let's document this, then.
The current situation is confusing for people using cypari2 as there are conflicting function declarations in paridecl.pxd and auto_paridecl.pxd.
But that's unavoidable (in principle), if we want to support many
different PARI version at once.
Having smaller files for the very same result is good.
Jeroen is saying that maintaining smaller files costs more
maintainance work. I can understand that argument, especially given
the small number of maintainers.
Luca
|
It is avoidable! All functions that depend on PARI versions are in |
As I have commented above, this statement is completely false. This is probably the main source of confusion. |
You might have misread (at least your reference to the above comment is unrelated). I never claimed that we can rid of |
You might have misread (at least your reference to the above comment is unrelated). I never claimed that we can rid of paridecl.pxd. Just that (currently) the functions that do change between PARI versions are taken care of in auto_paridecl.pxd.
Yeah. "currently". That's the same thing I meant by "in principle".
Currently we are supporting a very narrow range of PARI versions, so
it is no surprise that all functions that have changed signature are
auto-generated. Are we positive that this is not going to change
soonish?
A non-autogenerated function in `paridecl.pxd` might end up being
autogenerated, and even with a different signature, in the next
version.
|
Anyway, speaking of wasting energies: the time this discussion is
taking would have been sufficient to cleanup `paridecl.pxd` by hand.
If you make a PR doing exactly that, I don't think anyone is going to reject it.
|
See #58 |
As discussed in #28 and revived in Sage trac ticket #24531 we discuss the possibility of (partially or completely) auto generating
paridecl.pxd
from (one or both of)pari.desc
orparidecl.h
.The text was updated successfully, but these errors were encountered: