#8616: Symbolic type checking and expression parsing module
------------------------------+---------------------------------------------
Reporter: yuri.k | Owner: burcin
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-4.4
Component: symbolics | Keywords: symbolic, type, subexpression
Author: Yuri Karadzhov | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
------------------------------+---------------------------------------------
Comment(by yuri.k):
Replying to [comment:10 robertwb]:
> Thank you for working on desolve, that module is in need of a lot of
help. I'm really not seeing what mtype has to do with it though (and what
does "mtype" mean? wtype, stype, ... are equally obscure). Also _ for a
wildcard is very non-standard notation, perhaps "*.integer" would be
better.
>
_ wildcard is used in scala. * is used for multiply operator. desolve
module is really bad it is beter to completly rewrite it, but sage doesn't
have enough functions to start doing it. mtype is the firs step. It helps
to deal with symbolical expression.
> In any case, my main issue with this patch is that a huge list of
isinstance statements is not the way to implement this--it's brittle and
requires the module to know about everything in Sage. If we need an mtype
(operator, ...), it should be done OO style, with tests just for a few of
the builtin types (and even then it could be cleaner, using their names.
I absolutely agree with you. It is much better to have class hierarchy or
at least some common interface which can help to define type. And wraps or
mixins should be used for Python types. But I did mtype class to
concentrate attention on existing problem - sage is almost useless for
complex symbolical computations (it is my opinion as well as opinion of
my colleagues) It is hard for people who are new to python. You shouldn't
use mtype, but it is good to do smth about this problem in sage.
I made sketch to solve some simple de problems I write some common
functions in mtype, which can be easily rewritten to extract only diff
operators. So just use it if you want to.
I finished with sage for this year, now I need to do smth real. I'm sorry
I can't afford to spend some more time to finish this improvements.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8616#comment:11>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.