After some windows update, it does not work for me anymore... :(

Sage starts, the notebook loads, but once I try to do anything (i.e. create 
a new worksheet or open an existing one) I get a server error (on the 
browser) and some '[Errno 12] Cannot allocate memory' on the terminal. As 
suggested at some previous post, I increased the amount of virtual memory, 
but nothing changed.

On Friday, December 16, 2016 at 2:09:55 AM UTC+3, Bill Hart wrote:
>
> It works for me too!
>
> On Thursday, 15 December 2016 07:40:11 UTC+1, GK wrote:
>>
>> Hi again, thanks to the insight. I managed to successfully run sage in 
>> WSL. notebook(automatic_login='False') triggered indeed a different 
>> reaction, but again did not work. The trick was to run bash on ubuntu on 
>> windows as administrator and run sage. Afterwards all seem to work even 
>> without running Bash as administrator. (except that sage does not manage to 
>> open the browser, I do that manually). Also, I have added the line
>>
>> 127.0.0.1 localhost YOUR_MACHINE_NAME_HERE
>>
>> in /etc/hosts, which may be necessary for the sage server to start. 
>>
>> On Saturday, December 10, 2016 at 1:51:46 AM UTC+3, Dima Pasechnik wrote:
>>>
>>>
>>>
>>> On Friday, December 9, 2016 at 10:13:03 PM UTC, Bill Hart wrote:
>>>>
>>>> Ah I see. I assumed it would also try to spawn a browser or something.
>>>>
>>>
>>> the default ( notebook()) is indeed to try to open a browser/browser tab 
>>> to show the URL served by the server, whereas
>>>
>>> notebook(automatic_login=False) 
>>>
>>> will just run the server, and let the user to do the rest (connect to 
>>> the URL using a browser).
>>>
>>>  
>>>
>>>>
>>>> On the other hand, I understand some of the networking stuff is still 
>>>> not completed. You can of course use wget and the like so it can't be too 
>>>> broken.
>>>>
>>>> Bill.
>>>>
>>>> On Friday, 9 December 2016 15:15:43 UTC+1, Dima Pasechnik wrote:
>>>>>
>>>>>
>>>>>
>>>>> On Friday, December 9, 2016 at 12:48:30 PM UTC, Bill Hart wrote:
>>>>>>
>>>>>> The Sage Notebook isn't likely to work under the WSL. It's a text 
>>>>>> console environment only. Microsoft intended it mainly to provide Linux 
>>>>>> development tools to people, not as a way of running graphical 
>>>>>> applications. 
>>>>>>
>>>>>
>>>>> Hmm, no, all what gets to run here is a web server (on a local port) 
>>>>> talking to a Sage backend. Graphics happens in a web browser, so it 
>>>>> should 
>>>>> not be a problem of being "text console only".
>>>>>  
>>>>>
>>>>>>
>>>>>> You can probably fix the memory allocation issues though. You likely 
>>>>>> need to increase the Pagefile system size. Windows allocates a 
>>>>>> ridiculously 
>>>>>> small amount of memory for this.
>>>>>>
>>>>>> There's a walkthrough here:
>>>>>>
>>>>>> http://www.softwareok.com/?seite=faq-Windows-10&faq=52
>>>>>>
>>>>>> I use 16GB on my system (of course you need enough disk space).
>>>>>>
>>>>>> Bill.
>>>>>>
>>>>>> On Monday, 5 December 2016 11:24:21 UTC+1, GK wrote:
>>>>>>>
>>>>>>> Hi from me. My (more recent) experience is similar but not 
>>>>>>> identical. I install sage from the ppa and I am having problems. Sage 
>>>>>>> loads 
>>>>>>> and seems to be working, but:
>>>>>>>
>>>>>>>
>>>>>>> ┌────────────────────────────────────────────────────────────────────┐
>>>>>>> │ SageMath version 7.3, Release Date: 2016-08-04                     
>>>>>>> │
>>>>>>> │ Type "notebook()" for the browser-based notebook interface.        
>>>>>>> │
>>>>>>> │ Type "help()" for help.                                            
>>>>>>> │
>>>>>>>
>>>>>>> └────────────────────────────────────────────────────────────────────┘
>>>>>>> sage: gp.eval('2+2')
>>>>>>>
>>>>>>> ---------------------------------------------------------------------------
>>>>>>> OSError                                   Traceback (most recent 
>>>>>>> call last)
>>>>>>> <ipython-input-1-e5d4083fb83e> in <module>()
>>>>>>> ----> 1 gp.eval('2+2')
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc
>>>>>>>  
>>>>>>> in eval(self, code, strip, synchronize, locals, allow_use_file, 
>>>>>>> split_lines, **kwds)
>>>>>>>    1292                 elif split_lines:
>>>>>>>    1293                     return '\n'.join([self._eval_line(L, 
>>>>>>> allow_use_file=allow_use_file, **kwds)
>>>>>>> -> 1294                                         for L in 
>>>>>>> code.split('\n') if L != ''])
>>>>>>>    1295                 else:
>>>>>>>    1296                     return self._eval_line(code, 
>>>>>>> allow_use_file=allow_use_file, **kwds)
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/gp.pyc
>>>>>>>  
>>>>>>> in _eval_line(self, line, allow_use_file, wait_for_prompt, 
>>>>>>> restart_if_needed)
>>>>>>>     439         a = Expect._eval_line(self, line,
>>>>>>>     440                               allow_use_file=allow_use_file,
>>>>>>> --> 441                               
>>>>>>> wait_for_prompt=wait_for_prompt)
>>>>>>>     442         if a.find("the PARI stack overflows") != -1:
>>>>>>>     443             verbose("automatically doubling the PARI stack 
>>>>>>> and re-executing current input line")
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc
>>>>>>>  
>>>>>>> in _eval_line(self, line, allow_use_file, wait_for_prompt, 
>>>>>>> restart_if_needed)
>>>>>>>     903         try:
>>>>>>>     904             if self._expect is None:
>>>>>>> --> 905                 self._start()
>>>>>>>     906             E = self._expect
>>>>>>>     907             try:
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/gp.pyc
>>>>>>>  
>>>>>>> in _start(self, alt_message, block_during_init)
>>>>>>>     239
>>>>>>>     240     def _start(self, alt_message=None, 
>>>>>>> block_during_init=True):
>>>>>>> --> 241         Expect._start(self, alt_message, block_during_init)
>>>>>>>     242         # disable timer
>>>>>>>     243         self._eval_line('default(timer,0);')
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc
>>>>>>>  
>>>>>>> in _start(self, alt_message, block_during_init)
>>>>>>>     480                         env=pexpect_env,
>>>>>>>     481                         name=self._repr_(),
>>>>>>> --> 482                         quit_string=self._quit_string())
>>>>>>>     483             except (ExceptionPexpect, pexpect.EOF) as e:
>>>>>>>     484                 # Change pexpect errors to RuntimeError
>>>>>>>
>>>>>>> sage/interfaces/sagespawn.pyx in 
>>>>>>> sage.interfaces.sagespawn.SageSpawn.__init__ 
>>>>>>> (/usr/lib/sagemath//src/build/cythonized/sage/interfaces/sagespawn.c:1446)()
>>>>>>>
>>>>>>> sage/interfaces/sagespawn.pyx in 
>>>>>>> sage.interfaces.sagespawn.SageSpawn.__init__ 
>>>>>>> (/usr/lib/sagemath//src/build/cythonized/sage/interfaces/sagespawn.c:1398)()
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/pexpect/pty_spawn.pyc
>>>>>>>  
>>>>>>> in __init__(self, command, args, timeout, maxread, searchwindowsize, 
>>>>>>> logfile, cwd, env, ignore_sighup, echo, preexec_fn, encoding, 
>>>>>>> codec_errors, 
>>>>>>> dimensions)
>>>>>>>     196             self.name = '<pexpect factory incomplete>'
>>>>>>>     197         else:
>>>>>>> --> 198             self._spawn(command, args, preexec_fn, 
>>>>>>> dimensions)
>>>>>>>     199
>>>>>>>     200     def __str__(self):
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/pexpect/pty_spawn.pyc
>>>>>>>  
>>>>>>> in _spawn(self, command, args, preexec_fn, dimensions)
>>>>>>>     296
>>>>>>>     297         self.ptyproc = self._spawnpty(self.args, 
>>>>>>> env=self.env,
>>>>>>> --> 298                                      cwd=self.cwd, **kwargs)
>>>>>>>     299
>>>>>>>     300         self.pid = self.ptyproc.pid
>>>>>>>
>>>>>>> sage/interfaces/sagespawn.pyx in 
>>>>>>> sage.interfaces.sagespawn.SageSpawn._spawnpty 
>>>>>>> (/usr/lib/sagemath//src/build/cythonized/sage/interfaces/sagespawn.c:1631)()
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/ptyprocess/ptyprocess.pyc
>>>>>>>  
>>>>>>> in spawn(cls, argv, cwd, env, echo, preexec_fn, dimensions)
>>>>>>>     218
>>>>>>>     219         if use_native_pty_fork:
>>>>>>> --> 220             pid, fd = pty.fork()
>>>>>>>     221         else:
>>>>>>>     222             # Use internal fork_pty, for Solaris
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python/pty.pyc in fork()
>>>>>>>     106
>>>>>>>     107     master_fd, slave_fd = openpty()
>>>>>>> --> 108     pid = os.fork()
>>>>>>>     109     if pid == CHILD:
>>>>>>>     110         # Establish a new session.
>>>>>>>
>>>>>>> OSError: [Errno 12] Cannot allocate memory
>>>>>>> sage:
>>>>>>>
>>>>>>> and I cannot load the notebook interface:
>>>>>>>
>>>>>>> sage: notebook()
>>>>>>>
>>>>>>> ---------------------------------------------------------------------------
>>>>>>> EnvironmentError                          Traceback (most recent 
>>>>>>> call last)
>>>>>>> <ipython-input-2-3728cb3d7c7d> in <module>()
>>>>>>> ----> 1 notebook()
>>>>>>>
>>>>>>> sage/misc/lazy_import.pyx in 
>>>>>>> sage.misc.lazy_import.LazyImport.__call__ 
>>>>>>> (/usr/lib/sagemath//src/build/cythonized/sage/misc/lazy_import.c:3635)()
>>>>>>>
>>>>>>> sage/misc/lazy_import.pyx in 
>>>>>>> sage.misc.lazy_import.LazyImport._get_object 
>>>>>>> (/usr/lib/sagemath//src/build/cythonized/sage/misc/lazy_import.c:2242)()
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sagenb/notebook/notebook_object.py
>>>>>>>  
>>>>>>> in <module>()
>>>>>>>      15 import time, os, shutil, signal, tempfile
>>>>>>>      16
>>>>>>> ---> 17 import notebook as _notebook
>>>>>>>      18
>>>>>>>      19 import run_notebook
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sagenb/notebook/notebook.py
>>>>>>>  
>>>>>>> in <module>()
>>>>>>>      33
>>>>>>>      34 # Sage libraries
>>>>>>> ---> 35 from sagenb.misc.misc import (pad_zeros, cputime, tmp_dir, 
>>>>>>> load, save,
>>>>>>>      36                               ignore_nonexistent_files, 
>>>>>>> unicode_str)
>>>>>>>      37
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sagenb/misc/misc.py 
>>>>>>> in <module>()
>>>>>>>     379
>>>>>>>     380 try:
>>>>>>> --> 381     from sage.misc.cython import cython
>>>>>>>     382 except ImportError:
>>>>>>>     383     @stub
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/misc/cython.py 
>>>>>>> in <module>()
>>>>>>>      28
>>>>>>>      29 # CBLAS can be one of multiple implementations
>>>>>>> ---> 30 cblas_pc = pkgconfig.parse('cblas')
>>>>>>>      31 cblas_libs = list(cblas_pc['libraries'])
>>>>>>>      32 cblas_library_dirs = list(cblas_pc['library_dirs'])
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/pkgconfig-1.1.0-py2.7.egg/pkgconfig/pkgconfig.py
>>>>>>>  
>>>>>>> in parse(packages)
>>>>>>>     185
>>>>>>>     186     for package in packages.split():
>>>>>>> --> 187         for k, v in parse_package(package).items():
>>>>>>>     188             result[k].update(v)
>>>>>>>     189
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/pkgconfig-1.1.0-py2.7.egg/pkgconfig/pkgconfig.py
>>>>>>>  
>>>>>>> in parse_package(package)
>>>>>>>     158
>>>>>>>     159         # Execute the query to pkg-config and clean the 
>>>>>>> result.
>>>>>>> --> 160         out = _query(package, '--cflags --libs')
>>>>>>>     161         out = out.replace('\\"', '')
>>>>>>>     162
>>>>>>>
>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/pkgconfig-1.1.0-py2.7.egg/pkgconfig/pkgconfig.py
>>>>>>>  
>>>>>>> in _wrapper(*args, **kwargs)
>>>>>>>      56           
>>>>>>> Enter code here...
>>>>>>>
>>>>>>>
>>>>>>>   return func(*args, **kwargs)
>>>>>>>      57         except OSError:
>>>>>>> ---> 58             raise EnvironmentError("pkg-config is not 
>>>>>>> installed")
>>>>>>>      59
>>>>>>>      60     return _wrapper
>>>>>>>
>>>>>>> EnvironmentError: pkg-config is not installed
>>>>>>> sage:
>>>>>>>
>>>>>>> while I do have pkg-config installed.
>>>>>>>
>>>>>>> On Wednesday, May 18, 2016 at 5:07:02 PM UTC+3, William wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Wednesday, May 18, 2016, Brian Beavers <drbeav...@gmail.com> 
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Looks like there's more going on than just a lack of pty. Here's 
>>>>>>>>> the result:
>>>>>>>>>
>>>>>>>>>
>>>>>>>> Well that is just another test of pty...   
>>>>>>>>
>>>>>>>>  
>>>>>>>>
>>>>>>>>> sage: gp.eval('2+2')
>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------------
>>>>>>>>> OSError                                   Traceback (most recent 
>>>>>>>>> call last)
>>>>>>>>> <ipython-input-1-e5d4083fb83e> in <module>()
>>>>>>>>> ----> 1 gp.eval('2+2')
>>>>>>>>>
>>>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc
>>>>>>>>>  
>>>>>>>>> in eval(self, code, strip, synchronize, locals, allow_use_file, 
>>>>>>>>> split_lines, **kwds)
>>>>>>>>>    1237                 elif split_lines:
>>>>>>>>>    1238                     return '\n'.join([self._eval_line(L, 
>>>>>>>>> allow_use_file=allow_use_file, **kwds)
>>>>>>>>> -> 1239                                         for L in 
>>>>>>>>> code.split('\n') if L != ''])
>>>>>>>>>    1240                 else:
>>>>>>>>>    1241                     return self._eval_line(code, 
>>>>>>>>> allow_use_file=allow_use_file, **kwds)
>>>>>>>>>
>>>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/gp.pyc
>>>>>>>>>  
>>>>>>>>> in _eval_line(self, line, allow_use_file, wait_for_prompt, 
>>>>>>>>> restart_if_needed)
>>>>>>>>>     437         a = Expect._eval_line(self, line,
>>>>>>>>>     438                               
>>>>>>>>> allow_use_file=allow_use_file,
>>>>>>>>> --> 439                               
>>>>>>>>> wait_for_prompt=wait_for_prompt)
>>>>>>>>>     440         if a.find("the PARI stack overflows") != -1:
>>>>>>>>>     441             verbose("automatically doubling the PARI stack 
>>>>>>>>> and re-executing current input line")
>>>>>>>>>
>>>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc
>>>>>>>>>  
>>>>>>>>> in _eval_line(self, line, allow_use_file, wait_for_prompt, 
>>>>>>>>> restart_if_needed)
>>>>>>>>>     848         try:
>>>>>>>>>     849             if self._expect is None:
>>>>>>>>> --> 850                 self._start()
>>>>>>>>>     851             E = self._expect
>>>>>>>>>     852             try:
>>>>>>>>>
>>>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/gp.pyc
>>>>>>>>>  
>>>>>>>>> in _start(self, alt_message, block_during_init)
>>>>>>>>>     237
>>>>>>>>>     238     def _start(self, alt_message=None, 
>>>>>>>>> block_during_init=True):
>>>>>>>>> --> 239         Expect._start(self, alt_message, block_during_init)
>>>>>>>>>     240         # disable timer
>>>>>>>>>     241         self._eval_line('default(timer,0);')
>>>>>>>>>
>>>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/sage/interfaces/expect.pyc
>>>>>>>>>  
>>>>>>>>> in _start(self, alt_message, block_during_init)
>>>>>>>>>     423                         env=pexpect_env,
>>>>>>>>>     424                         name=self._repr_(),
>>>>>>>>> --> 425                         quit_string=self._quit_string())
>>>>>>>>>     426             except (ExceptionPexpect, pexpect.EOF) as e:
>>>>>>>>>     427                 # Change pexpect errors to RuntimeError
>>>>>>>>>
>>>>>>>>> sage/interfaces/sagespawn.pyx in 
>>>>>>>>> sage.interfaces.sagespawn.SageSpawn.__init__ 
>>>>>>>>> (/usr/lib/sagemath//src/build/cythonized/sage/interfaces/sagespawn.c:1331)()
>>>>>>>>>
>>>>>>>>> sage/interfaces/sagespawn.pyx in 
>>>>>>>>> sage.interfaces.sagespawn.SageSpawn.__init__ 
>>>>>>>>> (/usr/lib/sagemath//src/build/cythonized/sage/interfaces/sagespawn.c:1284)()
>>>>>>>>>
>>>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/pexpect/pty_spawn.pyc
>>>>>>>>>  
>>>>>>>>> in __init__(self, command, args, timeout, maxread, searchwindowsize, 
>>>>>>>>> logfile, cwd, env, ignore_sighup, echo, preexec_fn, encoding, 
>>>>>>>>> codec_errors, 
>>>>>>>>> dimensions)
>>>>>>>>>     191             self.name = '<pexpect factory incomplete>'
>>>>>>>>>     192         else:
>>>>>>>>> --> 193             self._spawn(command, args, preexec_fn, 
>>>>>>>>> dimensions)
>>>>>>>>>     194
>>>>>>>>>     195     def __str__(self):
>>>>>>>>>
>>>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/pexpect/pty_spawn.pyc
>>>>>>>>>  
>>>>>>>>> in _spawn(self, command, args, preexec_fn, dimensions)
>>>>>>>>>     286
>>>>>>>>>     287         self.ptyproc = self._spawnpty(self.args, 
>>>>>>>>> env=self.env,
>>>>>>>>> --> 288                                      cwd=self.cwd, 
>>>>>>>>> **kwargs)
>>>>>>>>>     289
>>>>>>>>>     290         self.pid = self.ptyproc.pid
>>>>>>>>>
>>>>>>>>> sage/interfaces/sagespawn.pyx in 
>>>>>>>>> sage.interfaces.sagespawn.SageSpawn._spawnpty 
>>>>>>>>> (/usr/lib/sagemath//src/build/cythonized/sage/interfaces/sagespawn.c:1520)()
>>>>>>>>>
>>>>>>>>> /usr/lib/sagemath/local/lib/python2.7/site-packages/ptyprocess/ptyprocess.pyc
>>>>>>>>>  
>>>>>>>>> in spawn(cls, argv, cwd, env, echo, preexec_fn, dimensions)
>>>>>>>>>     218
>>>>>>>>>     219         if use_native_pty_fork:
>>>>>>>>> --> 220             pid, fd = pty.fork()
>>>>>>>>>     221         else:
>>>>>>>>>     222             # Use internal fork_pty, for Solaris
>>>>>>>>>
>>>>>>>>> /usr/lib/sagemath/local/lib/python/pty.pyc in fork()
>>>>>>>>>     105         return pid, fd
>>>>>>>>>     106
>>>>>>>>> --> 107     master_fd, slave_fd = openpty()
>>>>>>>>>     108     pid = os.fork()
>>>>>>>>>     109     if pid == CHILD:
>>>>>>>>>
>>>>>>>>> /usr/lib/sagemath/local/lib/python/pty.pyc in openpty()
>>>>>>>>>      27     except (AttributeError, OSError):
>>>>>>>>>      28         pass
>>>>>>>>> ---> 29     master_fd, slave_name = _open_terminal()
>>>>>>>>>      30     slave_fd = slave_open(slave_name)
>>>>>>>>>      31     return master_fd, slave_fd
>>>>>>>>>
>>>>>>>>> /usr/lib/sagemath/local/lib/python/pty.pyc in _open_terminal()
>>>>>>>>>      68                 continue
>>>>>>>>>      69             return (fd, '/dev/tty' + x + y)
>>>>>>>>> ---> 70     raise os.error, 'out of pty devices'
>>>>>>>>>      71
>>>>>>>>>      72 def slave_open(tty_name):
>>>>>>>>>
>>>>>>>>> OSError: out of pty devices
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Brian Beavers, Ph.D., Associate Professor
>>>>>>>>> Department of Mathematics & Statistics
>>>>>>>>> Stephen F. Austin State University
>>>>>>>>>
>>>>>>>>> On Wed, May 18, 2016 at 8:50 AM, William Stein <wst...@gmail.com> 
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Wednesday, May 18, 2016, Brian Beavers <drbeavers...@gmail.com> 
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>> I've discovered why the notebook server (and administrative 
>>>>>>>>>>> pages within) loads but notebooks do not load: WSL does not yet 
>>>>>>>>>>> suppot pty. 
>>>>>>>>>>> When I try to create a worksheet, back in the terminal Sage throws 
>>>>>>>>>>> an error 
>>>>>>>>>>> that it is out of pty instances. 
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>> What happens if you do 
>>>>>>>>>>
>>>>>>>>>> gp.eval('2+2') 
>>>>>>>>>>
>>>>>>>>>> in the terminal?
>>>>>>>>>>
>>>>>>>>>> Also, unlike sagenb, jupyter doesn't use pty's so it won't have 
>>>>>>>>>> this obstruction.
>>>>>>>>>>  
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Brian Beavers, Ph.D., Associate Professor
>>>>>>>>>>> Department of Mathematics & Statistics
>>>>>>>>>>> Stephen F. Austin State University
>>>>>>>>>>>
>>>>>>>>>>> On Mon, May 16, 2016 at 2:31 AM, Dima Pasechnik <
>>>>>>>>>>> dimp...@gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> one can do graphics in a browser running on the host, so this 
>>>>>>>>>>>> is not really a big limitation.
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> 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.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> -- 
>>>>>>>>>>> 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.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> -- 
>>>>>>>>>> Sent from my massive iPhone 6 plus.
>>>>>>>>>>
>>>>>>>>>> -- 
>>>>>>>>>> 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.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>  
>>>>>>>>
>>>>>>>>> -- 
>>>>>>>>> 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.
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> -- 
>>>>>>>> Sent from my massive iPhone 6 plus.
>>>>>>>>
>>>>>>>

-- 
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.

Reply via email to