#14304: New implementation of unramified p-adics using FLINT and templates
-------------------------------------+-------------------------------------
Reporter: roed | Owner: roed
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-7.0
Component: padics | Resolution:
Keywords: sd59 | Merged in:
Authors: Julian Rueth, | Reviewers: David Roe, Julian
David Roe | Rueth
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/saraedum/ticket/14304 | 4b33f86e947f3ae1b3b35f311bb18f38bb62217c
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by saraedum):
Replying to [comment:63 jdemeyer]:
> 1. You don't need to add `include_dirs = [SAGE_INC + '/flint']` (just
add `flint/` to the path to the `.h` files)
Fixed in
[http://git.sagemath.org/sage.git/commit/?id=ab07bc41a76f58c6063c5e7a9ab8b4add7bc4f6a
ab07bc41a76f58c6063c5e7a9ab8b4add7bc4f6a].
> 2. You don't need to add `__richcmp__` calling `_richcmp`
Fixed in
[http://git.sagemath.org/sage.git/commit/?id=2a1f29345297da21ffe14c47e39faa1ac76eda5a
2a1f29345297da21ffe14c47e39faa1ac76eda5a].
> 3. You don't need to add `__hash__` which just raises `TypeError`: all
`Element`s are now unhashable by default.
I actually do need this implementation to override the base class.
Adressed in
[http://git.sagemath.org/sage.git/commit/?id=2a1f29345297da21ffe14c47e39faa1ac76eda5a
2a1f29345297da21ffe14c47e39faa1ac76eda5a].
> 4. For consistency with other `.pxd` files, could you move all
declarations of FLINT types to `sage/libs/flint/types.pxd`?
I believe that this has happened by now.
> 5. In this block
> {{{
> try:
> padic_ctx_init(self.ctx, self.fprime, 0, prec_cap,
PADIC_SERIES)
> except:
> mpz_clear(self.top_power)
> raise
> }}}
> given that `padic_ctx_init` is a C function, how could it ever raise a
Python exception? Moreover,
> I find it bad style to use `except:`, you should be more explicit and
catch `except BaseException:` instead (the reason I say this is because
most people write `except:` by mistake).
Both fixed in
[http://git.sagemath.org/sage.git/commit/?id=860366d0bf36e8684c97f5bd5d3e336e79f5795d
860366d0bf36e8684c97f5bd5d3e336e79f5795d].
----
New commits:
||[http://git.sagemath.org/sage.git/commit/?id=e376e2132878d77f2d9526d077af9e07f8556f51
e376e21]||{{{Merge branch 'develop' into t/14304/ticket/14304}}}||
||[http://git.sagemath.org/sage.git/commit/?id=860366d0bf36e8684c97f5bd5d3e336e79f5795d
860366d]||{{{remove except: for C function call in pow_computer}}}||
||[http://git.sagemath.org/sage.git/commit/?id=4b33f86e947f3ae1b3b35f311bb18f38bb62217c
4b33f86]||{{{fix build error}}}||
--
Ticket URL: <http://trac.sagemath.org/ticket/14304#comment:85>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.