Aaron Meurer
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To post to this group, send email to sy...@googlegroups.com.
> To unsubscribe from this group, send email to
> sympy+un...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/sympy?hl=en.
I was the original author of the pull request and I will be able to
help with code reviews, etc. However I will not be able to mentor this
project as I will myself be applying for another one.
>> 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 sy...@googlegroups.com.
> To unsubscribe from this group, send email to sympy+unsubscribe@googlegroups.com.
Probably easier is to just use 32-bit Python. On the Mac, the binary
can contain both architectures, and if you download the correct
installer from python.org, it does. You can get 32-bits by appending
arch -i386 to the executable, like "arch -i386 python". For
reference, you can get the 64-bit version by doing "arch -x86_64
python".
You can tell what version of Python you have by doing
import sys
import math
print "I am on %d-bits" % math.log(sys.maxint + 1, 2) + 1
Finally, I don't want to bash on winpdb, but you might checkout PuDB.
I personally think it's a nicer debugger, and you'll have zero GUI
related problems with it on the Mac, because it just runs in the
terminal.
Aaron Meurer
>> >> sympy+un...@googlegroups.com.
>> >> 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 sy...@googlegroups.com.
>> > To unsubscribe from this group, send email to
>> > sympy+un...@googlegroups.com.
>> > 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 view this discussion on the web visit
> https://groups.google.com/d/msg/sympy/-/IiaVgbpJclIJ.
>
> To post to this group, send email to sy...@googlegroups.com.
> To unsubscribe from this group, send email to
> sympy+un...@googlegroups.com.
There is a GSoC idea to extend this framework.
By the way, the latest version of Pyglet was released in 2010, but
there have been active updates in the mecurial repository at
http://code.google.com/p/pyglet/. Does the development version work
any better?
For the equation editor, you need to decide what framework you will
use for it. I think for now, we should either go for something curses
based or web based. The former would hook into the current pretty
printing system. The latter would be something to add into SymPy
Live. Hopefully it could also be hooked into the IPython notebook as
well, though I dont know to what level they allow extensions like that
(you'll have to ask on their list). If extensions are possible in the
qtconsole, that would be an idea too, I guess.
Aaron Meurer
> --
> 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/-/jFAEywPqU0sJ.
I can not say anything about the equation editor, but I may try to
help with the plotting module. Whenever you decide to try to make it
work again just contact us and describe the problem. To clone it and
use it you have to do (more or less) the following:
- install git
- clone sympy from github.com/sympy/sympy.git
- make a new branch
- go onto that new branch (i.e. checkout it)
- pull onto your new empty branch the branch in which the plotting
module is developed (git pull https://github.com/Krastanov/sympy.git
plotting)
- play with it (You will need matplotlib installed. It would be also
very useful to install ipython (which anyway you may need for other
possible projects))
If you are working on a linux or mac system you can find step by step
explanations in the "developer workflow" page in our documentation.
Stefan
Then, you use curses to manipulate these blocks. It should be easy to
create a keyboard interface to maneuver the block structure.
Then, the tricky part is to build the interface to actually manipulate
the block structure, in real time. Suppose I had x**2 already entered
and printed. If I have the cursor fully to the right of the
expression (i.e., in an empty block to the right of the x**2 block),
and I type /, it should call the "division" hook, which will add a
block with -- below the block with the printed x**2, and then add an
empty block below that where the cursor will be placed. Then, if I
type y, it will change the empty block to contain y. If I keep the
cursor below the -- but to the right of the y, and I type + z, it
should create two blocks to the right of y, one with " + " and one
with z, *and*, it should extend the -- block above it to ----- and
extend and recenter the x**2 block.
Much of this logic is already implemented in the pretty printer.
You'll just need to restructure it to handle keeping track of the
blocks after they are built, and also some restructuring relating to
manipulating individual blocks after they are built. You'll probably
need to do some restructuring to make it print expressions that aren't
fully built (like just "x +"). And you'll obviously need to hook into
curses to do keyboard shortcuts and interface for all this (but if you
use a good curses frontend, this is not difficult).
This is just the backend. For the frontend, you could create a simple
repl (in curses) for demonstration purposes. Ideally, this would be
hooked into a real Python curses repl, like bpython, or a future
IPython curses console. I wouldn't worry to much about the frontend,
except getting what is necessary to actually use the thing.
If you want to do the equation editor in an interface other than
curses, I'm afraid I don't have many suggestions for you. You'll have
to come up with the ideas yourself. We don't already have a printer
written in any other backend that you can manipulate, so you'd either
have to find one yourself and hook it into SymPy, or start from
scratch somehow.
Aaron Meurer
On Wed, Apr 4, 2012 at 1:08 PM, Vishesh Kumar <vishe...@gmail.com> wrote:
> Hi
>
> Thanks for the advice Stefan, I finally managed to get the matplot lib
> functionality to work! It's such a charm (especially after the continual
> failure of pyglet). In plotting 3-D surfaces, it gave me an error that
> autoscalezon takes only two arguments, three given. That seemed like a tiny
> error, I managed to fix in my own branch. I don't think that merits a pull
> request or anything, does it? And if not, how does one go about covering
> that with a fix? =)
>
> To Aaron, and any interested mentor, I would really like to work the
> equation editor idea, and need some assistance and guidance on how to make a
> schedule, and what all topics or ground I am expected to cover in a summer.
> Also, what is the possibility of contributing in ways not directly relevant
> to the equation editor, like the random idea for the plotting module I put
> in my application? Would that be considered relevant to my summer work, if
> selected?
It's probably better to keep it on topic (though you are of course
free to work on extraneous stuff if you have time).
>
>
> On Monday, 2 April 2012 22:47:51 UTC+5:30, Stefan Krastanov wrote:
>>
>> Hi,
>>
>> I can not say anything about the equation editor, but I may try to
>> help with the plotting module. Whenever you decide to try to make it
>> work again just contact us and describe the problem. To clone it and
>> use it you have to do (more or less) the following:
>>
>> - install git
>> - clone sympy from github.com/sympy/sympy.git
>> - make a new branch
>> - go onto that new branch (i.e. checkout it)
>> - pull onto your new empty branch the branch in which the plotting
>> module is developed (git pull https://github.com/Krastanov/sympy.git
>> plotting)
>> - play with it (You will need matplotlib installed. It would be also
>> very useful to install ipython (which anyway you may need for other
>> possible projects))
>>
>> If you are working on a linux or mac system you can find step by step
>> explanations in the "developer workflow" page in our documentation.
>>
>> Stefan
>
> --
> 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/-/Blj0HTDMxJEJ.
>
> To post to this group, send email to sy...@googlegroups.com.
> To unsubscribe from this group, send email to
> sympy+un...@googlegroups.com.
> I made a pull request - https://github.com/sympy/sympy/pull/1220 - as
> a part of my GSoC application
> –
> https://github.com/sympy/sympy/wiki/GSoC-2012-Application-Vishesh-Kumar:-Equation-Editor,
> which I have also submitted through Google Melange. I would like some
> guidance and feedback with respect to my project idea, and how to
> make it more specific and targeted.
Some time ago I read a paper about abstract matrices. Its
exact title is:
"Abstract Matrices in Symbolic Computation" by Alan Sexton
and Volker Sorge
Maybe you want to include a matrix editor in your GUI.
This would allow to enter arbitrary matrices easily.
And the algorithms in that paper even allow to use
the textbook "dots"-notation.
In combination with autogeneration of "missing"
symbols like a_{i,j} for the entries this could
be really useful!
Just a notice to other potential reviewers: I'm barely keeping up with
my own backlog so I can't do anything for Vishesh's proposal.