That's pretty cool.  This is a step toward what I think would be a
useful 2-d math input system, where you can type the math just as you
would in the current system, but as you type it, it is rendered in 2d.
I saw something like this for LaTeX once (in Javascript).  I can't
find it now, but basically if you typed something like
\sqrt{\frac{1}{x}}, as you typed, it would create the square root
symbol, and the fraction symbol. This would be useful for those of us
who already have muscle memory trained to typing equations in Python,
but often enter things that are large enough that it would help to see
them rendered as we go.

Aaron Meurer

On Fri, Feb 8, 2013 at 12:29 PM, David Mashburn
<[email protected]> wrote:
> Hello again!
>
> I just joined the group to post a topic on symbolic error propagation, but I
> also realized I've never really "announced" my little project, SymPySlices,
> so I'll go ahead and do it now...
>
> SymPySlices is basically a (rather cool) hack on top of the python shell
> (the PySlices notebook interface to be more precise) that lets you
> auto-instantiate all undeclared variables as symbols and allows for unicode
> / infix operators in a really flexible and extensible way.
> (I know Ondrej and I spoke about this a few years ago, but I've not really
> had time to work on it since.)
>
> The information about the project can be found at:
> http://code.google.com/p/wxpysuite/
>
> I'm also going to put the standard tutorial below for your convenience
> (although it looks a lot better inside the actual GUI).
>
> If you like some of these concepts or have any other ideas about extending
> this into a more of a functioning CAS system / Domain Specific Language or
> something, feel free to contact me. I think the whole idea of using unicode
> symbols (and mathematical markup for input...which is outside the scope of
> this project right now) could really ease the learning/using of sympy (or
> even sage) from a mathematical perspective if done properly.
>
> By the way, nice job with Sympy Live! That project is looking really
> polished!
>
> Cheers,
> -David Mashburn
>
>
>
> SymPySlices 0.9.8 - The Flakiest Python Shell... Cut up!
> Python 2.7.3 (default, Aug  1 2012, 05:14:39)
> [GCC 4.6.3] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
>
>                             Tutorial!!!
> ------------------------------------------------------------------------
> SymPySlices is part of the new and improved Py suite!
> PySlices is a modified version of PyCrust that supports multi-line commands.
> SymPySlices has automatic support for sympy (if it is installed).
>
> Input and output are contained in "Slices" shown as markers in the left
> margin.
> Input Slices have RED margins (active, editable).
> Output Slices have BLUE margins (frozen, not editable).
>
> Commands in slices can be on more than one line, as with Sage or
> Mathematica.
> For example, the command:
>>>>a=1
>>>>b=2
>>>>print a+b
> will all run in sequence, much like a script.
> Try running the above Input Slice by clicking somewhere in its text and
> using Ctrl-Return, Shift-Return, or Numpad Enter to execute.
> Previous commands (Old Slices) can be re-edited and run again in place.
>
> Slices can also be:
>  * selected (click on the margin, Shift-click for multiple selection)
>  * folded (click the margin twice)
>  * selected and deleted (hit delete while selected)
>  * divided (Ctrl-D)
>  * merged (Ctrl-M while selecting adjacent, like-colored slices)
>
> Try deleting the slice above this one by clicking on the red margin.
>
> If you want a more traditional shell feel, try enabling "Shell Mode" in
> "Options->Settings->Shell Mode" (or try PyCrust).
> In Shell Mode, Return acts in the usual way, executing command, and
>     Ctrl-Return and Shift-Return always print newlines.
>
> SymPySlices adds further enhancements!  Undefined variables are
> automatically converted to sympy symbols!
>
> Also, SymPySlices adds unicode support via an auto-replace method!
>
> Input is also supported using the escape key (<ESC>)
> For instance, typing either <ESC>theta<ESC>   or   <ESC>th<ESC>
> will automatically insert the Greek letter theta!
>>>>
> In SymPySlices, these unicode characters can also be used as valid python!
>
> A limited number of symbols and operators are supported now, but many others
> could be
> added in the future!  Operator support uses an "infix-to-prefix" conversion
> using the python module ast.
>
> As an example, try typing this below:
> <ESC>theta<ESC> = 2
> <ESC>theta<ESC> + <ESC>phi<ESC>
>>>>
> Should result in 2 + ϕ!
>
> Typing <ESC>integral<ESC>(x**2,x)
>
> Results in x**3/3!
> The Intergal operator has been defined as sympy.integral in
> SymPySlicesDefaults.py
> And, it can easily be overloaded simply by assignment!
>
> Also, typing c<ESC>dot<ESC>d below:
>>>>
> Should result in __DotOperator__(c,d)!
>
> You might also try [1,2,3,4]⋅[4,3,2,1]
> This produces the result expected, 20
>
> This operator feature is VERY EXPERIMENTAL but could be really useful!
>
> Saving and opening "sessions" is now supported!  This is a little
> different to other shells where the history is saved.  With PySlices and
> SymPySlices, the whole document is saved in a simple text format!
>
> To disable this Tutorial on startup, uncheck it in the menu at:
> "Options->Startup->Show PySlices tutorial"
>
> SymPySlices may not be the best thing since sliced bread, but
> I hope it makes using Python a little bit sweeter!
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" 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 http://groups.google.com/group/sympy?hl=en.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" 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 http://groups.google.com/group/sympy?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to