Re: [sage-devel] Updating Sagemath's README on Github [help] [newbie]

2016-01-07 Thread Karan Desai
Hi Nils,

I have just beautified the existing plaintext version without altering the 
content for now. I have provided the links to both, the original README.txt 
and my updated README.md file above in the thread. 
Please do have a look at both of them, it is the third post in this thread, 
authored by me -- it contains both the links to READMEs.
If there is any specific change you wish, please put it forward in the 
corresponding ticket I open up, once I get my trac account.
I will put up the specific ticket number here in the thread.

Regards,
Karan.


On Friday, January 8, 2016 at 4:03:53 AM UTC+5:30, Nils Bruin wrote:
>
> On Thursday, January 7, 2016 at 10:19:59 AM UTC-8, Karan Desai wrote:
>>
>> I forked the repository and converted the README.txt to README.md in a 
>> separate branch created from master.
>>
>  
> It's nice to have a README that renders a little nicer under special 
> circumstances, but this should not come at the cost of being less readable 
> as a plain text file. Markdown for the most part is pretty good for that, 
> so you can probably strike a reasonable compromise. So please be 
> conservative with using markdown features that make the plain text file 
> harder to read: a lot of people will still be reading it as plain text.
>
> In particular, make sure that the file consists of lines that are at most 
> 80 characters.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [IPython-dev] [sage-devel] Re: Jupyter notebook by default?

2016-01-07 Thread Thierry
Hi,

On Thu, Jan 07, 2016 at 11:48:05AM +0100, MinRK wrote:
[...]
>- document conversion from sagenb to ipynb

We should probably better focus on a good rst2ipynb translator.

Indeed, there is a "sage -sws2rst" command already. This will have the
benefit to be helpful for more people than just Sage users, and help us
going towards Jupyter live documentation i.e. ipynb files connected
together with a bit of sphinx (i dont' know if it is possible to add a
navigation bar to ipynb worksheets, or use frames, or whatever ?).

Moreover, all the developpers i met during tutorials and schools write
their tutorials in .rst, simply because it is human writeable, it is easy
to copy-paste from existing Sage doctests and tutorials, and can be easily
versionned/shared/imported.

Though json is far better than tar.bz or xml from the human point of view,
it is still too verbose to be considered as a source format for
worksheets, moreover from my little experience, people who write tutorials
prefer to use an editor/IDE/whatever than a webpage.

With pandoc and notedown, it is easy to do basic translation rst -> md ->
ipynb. The main remaining task is to let the code blocks clever, that is:

::
sage: a = 1
sage: 2*a
2
sage: 1+1
2

should be translated in ipynb as (simplified)

cell:
type: code
language: sage
input:
a = 1
2*a
output:
2
cell:
type: code
language: sage
input:
1+1
output:
2

which is not the case when piping pandoc and notedown (we obtain a single
input block, and the `sage:` are not removed).

Another separate hook could deal with Sage specific tweaks (e.g. `blah`
for :math:`blah`)

Ciao,
Thierry

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] The coefficients() method of a MultivariatePowerSeriesRing is unreasonably slow

2016-01-07 Thread Daniel Lowengrub
Hi,

I have been working a lot with PowerSeries recently, and discovered the 
following issue. Suppose we create a power series over a quotient ring like 
this:

sage: R=PolynomialRing(QQ,1,'x')
sage: quotient_of_R=R.quotient(R.irrelevant_ideal()**2, 'x')
sage: x=quotient_of_R.gen()
sage: P=PowerSeriesRing(quotient_of_R,3,'t')
sage: t=P.gens()

Now, let's construct a power series of moderately large degree:
sage: f=((x+t[0])**10)*((t[1]+t[2])**10)

Strangely, computing the coefficients of f via:
sage: f.coefficients()

takes much longer than the equivalent alternative of first turning f into a 
polynomial, and only then computing the coefficients:
sage:f.polynomial().dict()

I have not conducted a rigorous study of this, but on my computer the first 
version takes about 100 times longer than the second one.

Based on this I have two questions:

1) If we are just reading the coefficients of the power series, why should 
it matter if we first cast it to a polynomial?
2) If the issue lies in the details of the PowerSeries implementation, then 
would it make sense to simply cast powerseries to polynomials before 
calling methods that do not distinguish between the two?

Thanks,
Daniel

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Can somebody review #15328

2016-01-07 Thread Volker Braun
Filtered vector spaces and Klyachko bundles on toric varieties

http://trac.sagemath.org/ticket/15328

its been sitting in needs review for 2 years

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: OSX binaries (including El Capitan)

2016-01-07 Thread Volker Braun
Better error messages: http://trac.sagemath.org/ticket/19843 (needs review)

On Thursday, January 7, 2016 at 3:24:41 PM UTC+1, kcrisman wrote:
>
> Also possibly relevant:
> http://ask.sagemath.org/question/32094/sage-610-not-working-again-on-macos/
>  
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Updating Sagemath's README on Github [help] [newbie]

2016-01-07 Thread Nils Bruin
On Thursday, January 7, 2016 at 10:19:59 AM UTC-8, Karan Desai wrote:
>
> I forked the repository and converted the README.txt to README.md in a 
> separate branch created from master.
>
 
It's nice to have a README that renders a little nicer under special 
circumstances, but this should not come at the cost of being less readable 
as a plain text file. Markdown for the most part is pretty good for that, 
so you can probably strike a reasonable compromise. So please be 
conservative with using markdown features that make the plain text file 
harder to read: a lot of people will still be reading it as plain text.

In particular, make sure that the file consists of lines that are at most 
80 characters.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] wiki password reset

2016-01-07 Thread John Cremona
How can I reset my password on the sagemath wiki?  I need it to
register a patchbot.

John

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Updating Sagemath's README on Github [help] [newbie]

2016-01-07 Thread David Roe
We don't use github pull requests.  You'll need to wait for a trac account,
upload your SSH keys and then use the git trac extension (
https://github.com/sagemath/git-trac-command).  See the developer manual
for more details.
David

On Thu, Jan 7, 2016 at 1:19 PM, Karan Desai 
wrote:

> Hi David,
>
> I forked the repository and converted the README.txt to README.md in a
> separate branch created from master.
>
> I haven't altered any content for now and the README has been changed from
> this :
> https://www.github.com/sagemath/sage
>
> ... to this:
> https://github.com/karandesai-96/sage/tree/karandesai-96-readme-beautify
>
> While editing, I read the whole README, which gave me some good points to
> know about sage, useful for me as a newbie !
> What should I do further ? It would be helpful if you mention the
> hyperlink :)
> I requested a trac account but haven't yet received any confirmation
> e-mail. Should I fire up a pull request ?
> If yes, to which branch - master or develop?
> If no, I'll open a ticket as you instruct and wait for your as well as
> fellow developers' suggestions.
>
> Thank You.
> Karan
>
> On Thursday, January 7, 2016 at 6:04:33 PM UTC+5:30, David Roe wrote:
>>
>>
>>
>> On Wed, Jan 6, 2016 at 12:59 PM, Karan Desai 
>> wrote:
>>
>>> Hello developers,
>>>
>>> I recently put up a thread regarding contribution to sagemath. It has
>>> been helpful to me, I want to be helpful to community in any possible way.
>>> I was setting up the development environment, prefer Pycharm IDE for the
>>> same.
>>> I just forked the sage repository and built it from source, it took a
>>> lot of time but it was built properly, with many warnings but no errors.
>>> On https://www.github.com/sagemath/sage , the first and foremost thing
>>> seen by someone visiting the repo is the README.
>>> I can see it looks very flat and unmaintained, and as a .txt
>>> I would like to convert it into a neat markdown file, and even improve
>>> its content aligning to latest releases and fire up a pull request.
>>> It isn't an enhancement to the product, but such chores should be done
>>> to such a huge project.
>>> This would potentially be my first contribution, and I'll get the push
>>> to contribute more towards the product after I get the amazing feeling of
>>> my contribution to be included within !
>>> So do I make a ticket for this README too ? I am asking it as it doesn't
>>> directly enhance any part of the product. Please add in your views.
>>>
>>
>> That sounds like a great way to get started.  Glancing through
>> README.txt, I would check to see if the comments about relocation are still
>> accurate with the changes to binary builds on OS X 10.11.  Are
>> builds-from-source still relocatable?
>>
>> Opening a ticket and then working on converting it to Markdown sounds
>> like a good way to proceed.
>> David
>>
>>>
>>> Thank You.
>>> Karan.
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "sage-devel" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to sage-devel+...@googlegroups.com.
>>> To post to this group, send email to sage-...@googlegroups.com.
>>> Visit this group at https://groups.google.com/group/sage-devel.
>>> For more options, visit https://groups.google.com/d/optout.
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: git worktree

2016-01-07 Thread Nathann Cohen

>
> Has anyone tried it? Getting rid of "I checked out that branch, and it 
> triggered a 10-minute Sage rebuild" things would be great...
>

At some point I will get tired of repeating it, but there is absolutely no 
reason on earth why loading a branch should trigger *any* kind of rebuild 
except the files that were changed.

Checkout the latest develop that you have and create a new branch there 
with:

git checkout -b tmp develop

Then you pull the distant branch:

git pull trac 

Then 'sage -b' and you are done.

I have a short bash script that does that very easily, loads the branch 
from the ticket number, and if necessary adds a meaningful commit message 
("Merged with beta") on the merge commit.

So --> there is never any reason to recompile anything short of a new beta, 
or the files that a branch changed.

Nathann

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [IPython-dev] [sage-devel] Re: Jupyter notebook by default?

2016-01-07 Thread MinRK
Thanks Jason for cross-posting.

Since the issue of funding was brought up, I think supporting projects like
this is exactly the sort of thing we should be doing with the funding we
have, whether the work sits on the Jupyter or Sage side (I assume there
will be both). It’s a bit tricky to keep track of all the points in an
email thread, but if we could aggregate the things that are blockers and
the things that would be nice, especially changes you need from Jupyter, we
should be able to start ticking boxes.

A summary of what I’ve seen so far:

   - sage interacts
   - language cells
   - document conversion from sagenb to ipynb
   - low-level output capturing
   - gracefully handling large output

Some comments:

Re: language cells, I assume it’s referring to things like %%bash, %%R, and
%%cython. While these *look* similar, there is a significant difference in
how they are implemented. For instance, the R magic (provided by rpy2) runs
an R interpreter in-memory, and talks to it, capturing output, etc.. Where
many of these magics, such as bash, ruby, perl, come from is some “script
magic” machinery in IPython, which populates the default magics with
shortcuts to running a script in a given interpreter. They are essentially
shortcuts to cat  | . It’s not a fundamental limitation,
or anything dire like that. If sage has an implementation of running code
in a persistent alternate interpreter, then it should not be much work to
represent that in magics, since cell magics are any Python functions called
with two string arguments (the rest of the line and the cell), and can be
defined at any time, for instance:

def mymagic(line, cell):
do_stuff_with(cell)

get_ipython().register_magic_function(mymagic, 'cell')

Re: output capturing, Thomas Kluyver and I were at CERN last month working
on the Cling kernel, and one of the things we did was C-level capturing of
output. Now that we have that working, integrating it into the IPython
kernel should not be much work, and if it’s really important, libraries can
use the same technique themselves without waiting for IPython to catch up.

Interacts are perhaps the hardest piece. I think it should be doable to get
sage’s own interacts working in the notebook, rather than forcing people to
adopt the much more basic interact provided by the IPython widgets.

I can’t speak to the UI transition part of the problem whenever you change
defaults, which is a big challenge, but I think we can at least mitigate
most of the things on the Jupyter side that are getting in your way.

-MinRK
​

On Tue, Jan 5, 2016 at 8:19 PM, Jason Grout  wrote:

> (cross-posting to ipython-dev)
>
> Jon,
>
> At the recent San Francisco meetings, we talked about this.  What do you
> think about:
>
> 1. keeping track of the size of the io messages sent from any specific
> kernel execution
> 2. When the total size of io reaches some specific size
> (user-configurable), transmitting a special "throwing away output, but
> here's how to save the output to a file if you want in the future, or how
> to increase the limit" message
> 3. keep a running buffer of the last bit of output attempted to be sent,
> and send it when the execution finishes (so basically a ring buffer that
> overwrites the oldest message)
>
> This:
>
> * allows small output through
> * provides an explanatory message
> * provides the last bit of output as well
>
> One thing to figure out: a limit on size of output that is text may not be
> appropriate for output that is images, etc.
>
> Thanks,
>
> Jason
>
>
> On Tue, Jan 5, 2016 at 12:11 PM, Jason Grout  wrote:
>
>>
>> -- Forwarded message --
>> From: Jonathan Frederic 
>> Date: Tue, Jan 5, 2016 at 11:42 AM
>> Subject: Re: [sage-devel] Re: Jupyter notebook by default?
>> To: Jason Grout 
>> Cc: sage-devel 
>>
>>
>> Jason,
>>
>> Thanks for pulling me in on this.
>>
>> William,
>>
>> I agree, getting a bunch of people to agree on stuff can seem
>> impossible.  However, you mention Sage offers a couple options to mitigate
>> output overflows, can you point me to those options?  The Jupyter Notebook
>> should provide multiple options too - this will also make it easier for
>> everyone to agree.
>>
>> Also, in you experience, which of these options work the best?
>>
>> I was thinking initially of doing something simple, like hard limiting
>> data/time, then printing an error if that's exceeded.  In the Jupyter
>> Notebook, we have to worry about
>> - Too many messages sent on the websocket
>> - The notebook json file growing too large and consequently becoming
>> unopenable
>> - Too much data being appended to the DOM, crashing the browser
>>
>>
>> Thanks!
>> -Jon
>>
>> On Tue, Jan 5, 2016 at 10:19 AM, Jason Grout 
>> wrote:
>>
>>>
>>>
>>> On Tuesday, January 5, 2016 at 8:17:45 AM UTC-7, William wrote:


 One example of a subtle feature in Sage (notebook and worksheets) not
 in Jupyter, which I was just reminded of, is output limiting.  In Sage
 there are 

Re: [sage-devel] Re: A Sage function with a good deal of GAP native code

2016-01-07 Thread Nathann Cohen
> "should instead expose in the Sage mathematical objects those features from
> GAP that you need" (could anyone translate this for me?)

It means that:
- If you write native GAP code to implement this, I believe that it is
because you cannot run those computations by simply calling methods
from Sage mathematical objects as we usually do.
- Because the Sage mathematical objects may not have those methods
available, I suspect.
- Could you add those methods to the Sage objects and call them?

This way there would be no need of a big chunk of GAP code.

> and that he "was just looking at the GAP code (and getting scared)"
> and he won't review it because I put few lines of GAP code in a string.

I have the inalienable right to be scared whenever I please.

Nathann

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.