On Sun, Sep 9, 2012 at 4:08 AM, Aaron Meurer <[email protected]> wrote:
> This is great.
>
> Yes, so far it is quite buggy.  sin(x) gives a NameError, and x + y
> gives a pretty nasty error.  Also you should think about good error
> messages, because even if you fix these bugs, the parser will still be
> heuristic, and so there will still be things that won't be recognized
> as the user wants, either because it isn't implemented, or because it
> is too ambiguous to attempt a guess.
>
> Perhaps you could split out the new interface commits into a separate
> branch and submit that as a pull request, because I think that much is
> ready to go.

Ah, I guess they are already separate, because the parsing stuff is in
SymPy and the interface is in SymPy Gamma.  Is there a branch with the
Gamma improvements?

Aaron Meurer

>
> Aaron Meurer
>
> On Sat, Sep 8, 2012 at 5:43 PM, David Li <[email protected]> wrote:
>> Okay, so I've worked a bit on implicit multiplication and implicit function
>> application for sympify. A demo of SymPy Gamma with the changes is at
>> http://sympy-gamma-li.appspot.com/ (+ a visual overhaul, update to Python
>> 2.7 runtime, new Django version). Expressions like '2x', 'ln x', and
>> '5exp(x^2)' should work now.
>>
>> The SymPy branch is at
>> https://github.com/lidavidm/sympy/tree/sympify_implicit_mul_and_apply. I am
>> still working on making sure the implicit application doesn't apply to None,
>> True, False, and other constants, making sure I haven't broken
>> anything/missed an edge case, and cleaning up the code. Also, I would like
>> to add tests for the Python parser. In fact, I found a bug as I was writing
>> this - (x+2)(x+3) doesn't get correctly parsed.
>>
>> Implementation: in sympy_parser.py I simply loop over the tokens several
>> times and apply a variety of transformations. I haven't benchmarked this to
>> see how much of a performance impact the loops have. I also check for NAME
>> tokens and split them up if they don't turn out to be in the global scope or
>> something like that, so 'xy' gets parsed as 'x y'.
>>
>> David Li
>>
>>
>> On Monday, September 3, 2012 11:31:35 AM UTC-7, David Li wrote:
>>>
>>> Hello all,
>>>
>>> As a high school student, I am encouraged to conduct a science fair
>>> experiment each year. I became interested in contributing to SymPy through
>>> the 2011 Google Code-In project, and for this year, I am interested in
>>> somehow working on SymPy for science fair. I reviewed the GSoC 2012 Ideas
>>> and believe I could work on a few of those ideas, in particular,
>>> implementing by-hand differentiation/integration in order to show steps or
>>> working on some sort of natural-language input for SymPy Gamma/sympify. My
>>> question is, are these projects desirable for SymPy, and are there other
>>> project ideas (that you think would be approachable)?
>>>
>>> I saw the discussion on SymPy Gamma at
>>> https://groups.google.com/forum/?fromgroups=#!topic/sympy/YJNc_MoccYg;
>>> however, there seems to have been little development since then. Is this
>>> still a project SymPy would like to pursue? For a project, I could
>>> investigate natural-language input, perhaps by integrating NLTK. After
>>> playing with NLTK, I think some areas of research could involve improving
>>> the tokenizer to handle math expressions (for instance, currently 'tan(x)'
>>> gets parsed as ['tan', '(', 'x', ')']), and of course, actually interpreting
>>> the input. A different project would involve investigating/implementing
>>> by-hand differentiation/integration methods so that SymPy could show steps.
>>>
>>> To give some background about my learning, I am currently taking
>>> Multivariable Calculus/Differential Equations. I have completed AP Calculus
>>> BC; I have basic knowledge of logic and set theory, but that is the extent
>>> of my mathematical knowledge.
>>>
>>> Thank you,
>>> David Li
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "sympy" group.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msg/sympy/-/SBll6sBsNuoJ.
>>
>> 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/sympy?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" 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/sympy?hl=en.

Reply via email to