#20087: `__call__(message)` on a linear code or encoder should return a 
codeword.
-------------------------------------+-------------------------------------
       Reporter:  jsrn               |        Owner:
           Type:  enhancement        |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-7.2
      Component:  coding theory      |   Resolution:
       Keywords:  beginner           |    Merged in:
        Authors:  David Lucas        |    Reviewers:
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  u/dlucas/shortcut_to_encode        |  6b32cf00bc4edcbaf17654e5c3f9546914160140
   Dependencies:                     |     Stopgaps:
-------------------------------------+-------------------------------------

Comment (by jsrn):

 > Err yes, because `encode` is overridden in the polynomial encoder for
 GRS codes.
 > The alias is already added to `encoder.py`, and `E(m)` encodes `m` if
 possible.

 Ouch, that's a super-nasty trap! All encoders written in the future will
 fall into this!

 I vote for *not* defining `Encoder.__call__` as an alias, then, but
 instead rely on dynamic dispatch to avoid the trap:

 {{{
     def __call__(self, m):
         return self.encode(m)
 }}}

--
Ticket URL: <http://trac.sagemath.org/ticket/20087#comment:21>
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.

Reply via email to