[sage-support] Re: SageWorld
I describe the idea and technical issues in more details here: http://sageworldmath.blogspot.com/ # Serge --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-support] Re: SageWorld
See inline below. Robert Bradshaw пишет: > On Apr 30, 2009, at 10:13 PM, William Stein wrote: > >> On Thu, Apr 30, 2009 at 10:05 PM, Robert Bradshaw >> wrote: >>> On Apr 29, 2009, at 3:00 PM, Serge Salamanka wrote: >>> Is it a good idea to share objects between python processes with the help of any database ? Can't still find any decent tool for sharing objects. Saving and loading them in Sage seems to be a simple approach for user but not for an application to run. >>> Though this isn't quite what you're looking for, it would be nice to >>> be able to "publish" an object just like one publishes a worksheet on >>> a public server. It would then give a url where the .sobj can be >>> downloaded (by anyone, so to send you an object I would write in a >>> notebook cell) >>> >>> publish(a) >>> http://sagenb.org/pub/unique_name.sobj >>> >>> which would return a url that's good as long as the server is live, >>> and you could send it to someone (e.g. via email or chat) and they >>> could load it with load("http://sagenb.org/pub/unique_name.sobj";). >>> From the command line it could perhaps just save it as a file and >>> return the filename. >>> >> You can already do this. In a worksheet, just do >> >> save(a,'a.sobj') >> >> then publish the worksheet that contains a, then there will be a link >> to the sobj. >> E.g., I just published http://sagenb.org/home/pub/505/ which contains >> such a link: >> >>http://sagenb.org/home/pub/505/cells/2/a.sobj >> >> Now anybody can do: >> >> teragon:~ wstein$ sage >> -- >> | Sage Version 3.4.1, Release Date: 2009-04-21 | >> | Type notebook() for the GUI, and license() for information.| >> -- >> sage: a = load('http://sagenb.org/home/pub/505/cells/2/a.sobj') >> Attempting to load remote file: http://sagenb.org/home/pub/505/ >> cells/2/a.sobj >> Loading: [.] >> sage: a >> 'e!' > > Ah, yes, you can. I still think it might be handy to be able to just > publish objects detached from worksheets though. Taken one step Yes, this could be useful indeed. > further, being able to "push" them too to a public place (though > this opens a whole can of authentication/security issues). Well, this is very easy in gLite. One would have to just save an object and copy it to the public space in Grid storage information system. I might make this possible for SAGE some time. There is also an idea to use RSS feeds for spreading information about published objects and notebooks. (see my post "Sage RSS reader in firefox and .xml .rss in SAGE") # Serge > > - Robert > > > > > --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-support] Re: SageWorld
On Apr 30, 2009, at 10:13 PM, William Stein wrote: > On Thu, Apr 30, 2009 at 10:05 PM, Robert Bradshaw > wrote: >> >> On Apr 29, 2009, at 3:00 PM, Serge Salamanka wrote: >> >>> Is it a good idea to share objects between python processes with the >>> help of any database ? >>> Can't still find any decent tool for sharing objects. Saving and >>> loading >>> them in Sage seems to be a simple approach for user but not for an >>> application to run. >> >> Though this isn't quite what you're looking for, it would be nice to >> be able to "publish" an object just like one publishes a worksheet on >> a public server. It would then give a url where the .sobj can be >> downloaded (by anyone, so to send you an object I would write in a >> notebook cell) >> >> publish(a) >> http://sagenb.org/pub/unique_name.sobj >> >> which would return a url that's good as long as the server is live, >> and you could send it to someone (e.g. via email or chat) and they >> could load it with load("http://sagenb.org/pub/unique_name.sobj";). >> From the command line it could perhaps just save it as a file and >> return the filename. >> > > You can already do this. In a worksheet, just do > > save(a,'a.sobj') > > then publish the worksheet that contains a, then there will be a link > to the sobj. > E.g., I just published http://sagenb.org/home/pub/505/ which contains > such a link: > >http://sagenb.org/home/pub/505/cells/2/a.sobj > > Now anybody can do: > > teragon:~ wstein$ sage > -- > | Sage Version 3.4.1, Release Date: 2009-04-21 | > | Type notebook() for the GUI, and license() for information.| > -- > sage: a = load('http://sagenb.org/home/pub/505/cells/2/a.sobj') > Attempting to load remote file: http://sagenb.org/home/pub/505/ > cells/2/a.sobj > Loading: [.] > sage: a > 'e!' Ah, yes, you can. I still think it might be handy to be able to just publish objects detached from worksheets though. Taken one step further, being able to "push" them too to a public place (though this opens a whole can of authentication/security issues). - Robert --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-support] Re: SageWorld
On Thu, Apr 30, 2009 at 10:05 PM, Robert Bradshaw wrote: > > On Apr 29, 2009, at 3:00 PM, Serge Salamanka wrote: > >> Is it a good idea to share objects between python processes with the >> help of any database ? >> Can't still find any decent tool for sharing objects. Saving and >> loading >> them in Sage seems to be a simple approach for user but not for an >> application to run. > > Though this isn't quite what you're looking for, it would be nice to > be able to "publish" an object just like one publishes a worksheet on > a public server. It would then give a url where the .sobj can be > downloaded (by anyone, so to send you an object I would write in a > notebook cell) > > publish(a) > http://sagenb.org/pub/unique_name.sobj > > which would return a url that's good as long as the server is live, > and you could send it to someone (e.g. via email or chat) and they > could load it with load("http://sagenb.org/pub/unique_name.sobj";). > From the command line it could perhaps just save it as a file and > return the filename. > You can already do this. In a worksheet, just do save(a,'a.sobj') then publish the worksheet that contains a, then there will be a link to the sobj. E.g., I just published http://sagenb.org/home/pub/505/ which contains such a link: http://sagenb.org/home/pub/505/cells/2/a.sobj Now anybody can do: teragon:~ wstein$ sage -- | Sage Version 3.4.1, Release Date: 2009-04-21 | | Type notebook() for the GUI, and license() for information.| -- sage: a = load('http://sagenb.org/home/pub/505/cells/2/a.sobj') Attempting to load remote file: http://sagenb.org/home/pub/505/cells/2/a.sobj Loading: [.] sage: a 'e!' William --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-support] Re: SageWorld
On Apr 29, 2009, at 3:00 PM, Serge Salamanka wrote: > Is it a good idea to share objects between python processes with the > help of any database ? > Can't still find any decent tool for sharing objects. Saving and > loading > them in Sage seems to be a simple approach for user but not for an > application to run. Though this isn't quite what you're looking for, it would be nice to be able to "publish" an object just like one publishes a worksheet on a public server. It would then give a url where the .sobj can be downloaded (by anyone, so to send you an object I would write in a notebook cell) publish(a) http://sagenb.org/pub/unique_name.sobj which would return a url that's good as long as the server is live, and you could send it to someone (e.g. via email or chat) and they could load it with load("http://sagenb.org/pub/unique_name.sobj";). From the command line it could perhaps just save it as a file and return the filename. - Robert --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-support] Re: SageWorld
Thank you, Mike Let's say, I run a Sage process on some python code which creates a space and sets variables and constants, starts time and log, loads objects and does manipulations with them, writes back the state of the objects. >From user side I have to: - create object, - share it somehow with Sage, - have access to manipulate it (others should not be able to do that), - get the state of my object and other objects in the space, - decide what to do with my object: transform it or move it, either smth else, - share these changes with Sage. Ex., I follow picture of 2D graph where I have a circle to be my object in sageworld. Someone else joins in and draws a square somewhere close. Sage code checks that objects do not intercept. I need to swallow up that square. I write code for necessary transformations taking into account restrictions and all the rules of the sageworld and send it to a sage session. On the other end, the user which has a square looks at his 2d graph and sees that circle has begun transforming in a strange way. The task of that user is to avoid swallowing of his square by the circle. He makes the necessary precautions and sends the code to sageworld. This is a simple thing what I want to do. Sorry, if I described it very silly. But just to illustrate that writing a client may be is not the way to accomplish the task ... ??? I don't know. But thank you for the idea Serge Mike Hansen пишет: > On Wed, Apr 29, 2009 at 3:00 PM, Serge Salamanka wrote: >> Is it a good idea to share objects between python processes with the >> help of any database ? >> Can't still find any decent tool for sharing objects. Saving and loading >> them in Sage seems to be a simple approach for user but not for an >> application to run. > > I think you might find it easier if you had only one Sage process and > then wrote a client for multiple users to connect to that > > --Mike > > > > --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-support] Re: SageWorld
On Wed, Apr 29, 2009 at 3:00 PM, Serge Salamanka wrote: > > Is it a good idea to share objects between python processes with the > help of any database ? > Can't still find any decent tool for sharing objects. Saving and loading > them in Sage seems to be a simple approach for user but not for an > application to run. I think you might find it easier if you had only one Sage process and then wrote a client for multiple users to connect to that --Mike --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-support] Re: SageWorld
Is it a good idea to share objects between python processes with the help of any database ? Can't still find any decent tool for sharing objects. Saving and loading them in Sage seems to be a simple approach for user but not for an application to run. Serge Serge Salamanka пишет: > I found Pyro with exceptional functionality. > pyro.sourceforge.net > This might be used for the purpose? > > I just need to make easily accessible the objects that other user > creates during his session and also share my objects. > Better this would be fully automated rather than loading/saving > > William Stein пишет: >> On Mon, Apr 27, 2009 at 5:01 PM, Serge Salamanka wrote: >>> Hello, >>> >>> I wonder how it is possible to make a common shared objects space for >>> all of the users on the Sage server ? >> If X is any object in any Sage session then any user can type >> >> save(X, '/tmp/name.sobj') >> >> and any other user can load X by typing >> >> X = load('/tmp/name.sobj') >> >> That basically accomplishes what you asked for, right? >> >> -- William >>> The idea is to make available the mathematical space to users providing >>> that they all can have access from within their own sessions to a common >>> session. >>> >>> As far as I understand: >>> I propose to install server as multiuser app with unix accounts. >>> Each user runs IPython shell when working with Sage (also from notebook). >>> There is a need to make the user objects accessible to others (say, like >>> to work in the same session). >>> The best would be even to use ACLs for controlling access to objects >>> (say, another user cannot modify object but only read and use it). >>> >>> Could you please point me to the right direction. >>> >>> I suppose I should look for this somewhere in python functionality ? >>> >>> Comments are welcome. >>> >>> Serge >>> >> >> > > > > --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-support] Re: SageWorld
May be I reinventing bicycle ? Could anyone comment whether something familiar has been already known ? I want to play mathematics with my kid and colleagues with the help of Sage. Is it a bad idea ? Serge A. Salamanka Serge Salamanka пишет: > This is very simple and effective but not for the task I'm heading for. > > It might be better to start from the idea itself. > > SageWorld is mathematical world where everyone could create mathematical > objects and operate them to win a certain battle. > For example, the world in 3D space with physical laws and its constants: > SageWarrior creates there an object according to the rules existing in > this SageWorld. SageWarrior owns this object until he is available to > control its behavior. The task and challenge is to occupy more space or > to control more objects. > In a way it is just for the game ))) > But perhaps would be practically useful. > > So I need tools to make one separate session for SageWorld with its own > behavior and the tools to connect to this session by users and > manipulate objects. > Thus the SageWar begins. :) > > Serge > > William Stein пишет: >> On Mon, Apr 27, 2009 at 5:01 PM, Serge Salamanka wrote: >>> Hello, >>> >>> I wonder how it is possible to make a common shared objects space for >>> all of the users on the Sage server ? >> If X is any object in any Sage session then any user can type >> >> save(X, '/tmp/name.sobj') >> >> and any other user can load X by typing >> >> X = load('/tmp/name.sobj') >> >> That basically accomplishes what you asked for, right? >> >> -- William >>> The idea is to make available the mathematical space to users providing >>> that they all can have access from within their own sessions to a common >>> session. >>> >>> As far as I understand: >>> I propose to install server as multiuser app with unix accounts. >>> Each user runs IPython shell when working with Sage (also from notebook). >>> There is a need to make the user objects accessible to others (say, like >>> to work in the same session). >>> The best would be even to use ACLs for controlling access to objects >>> (say, another user cannot modify object but only read and use it). >>> >>> Could you please point me to the right direction. >>> >>> I suppose I should look for this somewhere in python functionality ? >>> >>> Comments are welcome. >>> >>> Serge >>> >> >> > > > > --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~--- begin:vcard fn:Serge A. Salamanka n:Salamanka;Serge A. org:National Academy of Sciences of Belarus;Laboratory of High Performance Systems adr:;;;Minsk;;;Belarus email;internet:salsa-...@tut.by title:Software engineer x-mozilla-html:FALSE version:2.1 end:vcard
[sage-support] Re: SageWorld
I found Pyro with exceptional functionality. pyro.sourceforge.net This might be used for the purpose? I just need to make easily accessible the objects that other user creates during his session and also share my objects. Better this would be fully automated rather than loading/saving William Stein пишет: > On Mon, Apr 27, 2009 at 5:01 PM, Serge Salamanka wrote: >> Hello, >> >> I wonder how it is possible to make a common shared objects space for >> all of the users on the Sage server ? > > If X is any object in any Sage session then any user can type > > save(X, '/tmp/name.sobj') > > and any other user can load X by typing > > X = load('/tmp/name.sobj') > > That basically accomplishes what you asked for, right? > > -- William >> The idea is to make available the mathematical space to users providing >> that they all can have access from within their own sessions to a common >> session. >> >> As far as I understand: >> I propose to install server as multiuser app with unix accounts. >> Each user runs IPython shell when working with Sage (also from notebook). >> There is a need to make the user objects accessible to others (say, like >> to work in the same session). >> The best would be even to use ACLs for controlling access to objects >> (say, another user cannot modify object but only read and use it). >> >> Could you please point me to the right direction. >> >> I suppose I should look for this somewhere in python functionality ? >> >> Comments are welcome. >> >> Serge >> > > > --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-support] Re: SageWorld
This is very simple and effective but not for the task I'm heading for. It might be better to start from the idea itself. SageWorld is mathematical world where everyone could create mathematical objects and operate them to win a certain battle. For example, the world in 3D space with physical laws and its constants: SageWarrior creates there an object according to the rules existing in this SageWorld. SageWarrior owns this object until he is available to control its behavior. The task and challenge is to occupy more space or to control more objects. In a way it is just for the game ))) But perhaps would be practically useful. So I need tools to make one separate session for SageWorld with its own behavior and the tools to connect to this session by users and manipulate objects. Thus the SageWar begins. :) Serge William Stein пишет: > On Mon, Apr 27, 2009 at 5:01 PM, Serge Salamanka wrote: >> Hello, >> >> I wonder how it is possible to make a common shared objects space for >> all of the users on the Sage server ? > > If X is any object in any Sage session then any user can type > > save(X, '/tmp/name.sobj') > > and any other user can load X by typing > > X = load('/tmp/name.sobj') > > That basically accomplishes what you asked for, right? > > -- William >> The idea is to make available the mathematical space to users providing >> that they all can have access from within their own sessions to a common >> session. >> >> As far as I understand: >> I propose to install server as multiuser app with unix accounts. >> Each user runs IPython shell when working with Sage (also from notebook). >> There is a need to make the user objects accessible to others (say, like >> to work in the same session). >> The best would be even to use ACLs for controlling access to objects >> (say, another user cannot modify object but only read and use it). >> >> Could you please point me to the right direction. >> >> I suppose I should look for this somewhere in python functionality ? >> >> Comments are welcome. >> >> Serge >> > > > --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-support] Re: SageWorld
On Mon, Apr 27, 2009 at 5:01 PM, Serge Salamanka wrote: > > Hello, > > I wonder how it is possible to make a common shared objects space for > all of the users on the Sage server ? If X is any object in any Sage session then any user can type save(X, '/tmp/name.sobj') and any other user can load X by typing X = load('/tmp/name.sobj') That basically accomplishes what you asked for, right? -- William > > The idea is to make available the mathematical space to users providing > that they all can have access from within their own sessions to a common > session. > > As far as I understand: > I propose to install server as multiuser app with unix accounts. > Each user runs IPython shell when working with Sage (also from notebook). > There is a need to make the user objects accessible to others (say, like > to work in the same session). > The best would be even to use ACLs for controlling access to objects > (say, another user cannot modify object but only read and use it). > > Could you please point me to the right direction. > > I suppose I should look for this somewhere in python functionality ? > > Comments are welcome. > > Serge > > > > -- William Stein Associate Professor of Mathematics University of Washington http://wstein.org --~--~-~--~~~---~--~~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~--~~~~--~~--~--~---