Re: [vos-d] s5 site ids

2008-02-12 Thread Peter Amstutz
You've got it.  Setting up aliases based on prefix at the top of the XOD 
file was exactly the solution I had in mind to the verbose-site-ids 
problem.  Similarly in the code generator we just need to emit a macro 
which hides the scary site namespace.

On Tue, Feb 12, 2008 at 06:04:50PM -0500, Reed Hedges wrote:
 
 
 In VOS it in fact would be easy to build a little tree of the types with 
 different names to make them easier for people to work with, while 
 keeping their real names hidden.
 
 So you can make an object like /t and select out the specific top 
 level versions used from the containers (namespaces?) with the big ids.
 
 E.g.
 
 /t/vos - /vos:0011223344556677889900aabbccddee/vos
...Has various children for core types...
 /t/a3dl - /vos:0011223344556677889900aabbccddef/a3dl
...Has various children for 3d types...
 /t/mytypes - /vos:992288337744beffc38aa3712cdd219a8e/mytypes
...Has various children for custom types...
 
 /foo type=/t/mytypes/foo
 /bar type=/t/a3dl/object3d
 
 Maybe we even enshrine a container like /t or /_types as standard place 
 to put the working set of types, as a convention that all user 
 interfaces use, and so when they are telling a user what the type of a 
 vobject is, they can just strip off the prefix, or when preseting the 
 user with a list of possible types, just provide a listing (or tree 
 view) of the children of /t, etc.
 
 Or a UI can just look at the type definition to get a user friendly type 
 name.
 
 But OK, in the general case, we need to come up with ways like this to 
 help users navigate vobjects, whether in a particular application or in 
 VOS stuff like this, without having to put a lot of special stuff in the 
 user interface clients.
 
 Reed

-- 
[ Peter Amstutz ][ [EMAIL PROTECTED] [EMAIL PROTECTED]
[Lead Programmer][Interreality Project][Virtual Reality for the Internet]
[ VOS: Next Generation Internet Communication][ http://interreality.org ]
[ http://interreality.org/~tetron ][ pgpkey:  pgpkeys.mit.edu  18C21DF7 ]



signature.asc
Description: Digital signature
___
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d


Re: [vos-d] s5 site ids

2008-02-11 Thread Peter Amstutz
On Sat, Feb 09, 2008 at 01:02:15AM +, Lalo Martins wrote:
 Yet, you didn't address my actual point ;-)
 
 I know what site IDs are supposed to be for.  My question is -- do we 
 really want libraries to ship as a separate site each?  I realise the 
 key space is pretty large, so polluting it is probably no big deal, but 
 I see no big advantage in this case.  (You would need to ship the private 
 key, anyway, right?)

In VOS terms, a Library is a set of interfaces, not concrete classes.  
This is why the Implementation objects are separate from the Class 
objects.  This idea needs to be developed more, though, since even 
within the VOS type system itself I have found it useful to have both 
abstract classes (that cannot be instantiated ever, interface only) and 
concrete classes.

With regard to shipping the private key, my thinking is that publishing 
an API is like specifying a protocol, and that you really want a way of 
unambigiously referring to a specific API as published by a specific 
entity at a specific version.  If you let everybody have the private key 
then you cannot guarantee that, because anyone could produce a signed 
API document.  One of the foundation concepts in s5 is that ownership 
of a private key implies the ability (and responsibility) to coordinate 
changes to that site so that you don't have conflicting replicas 
floating around from different sources.

-- 
[ Peter Amstutz ][ [EMAIL PROTECTED] [EMAIL PROTECTED]
[Lead Programmer][Interreality Project][Virtual Reality for the Internet]
[ VOS: Next Generation Internet Communication][ http://interreality.org ]
[ http://interreality.org/~tetron ][ pgpkey:  pgpkeys.mit.edu  18C21DF7 ]



signature.asc
Description: Digital signature
___
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d


Re: [vos-d] s5 site ids

2008-02-11 Thread Lalo Martins
Also spracht Peter Amstutz (Mon, 11 Feb 2008 17:43:45 -0500):
 With regard to shipping the private key, my thinking is that publishing
 an API is like specifying a protocol, and that you really want a way of
 unambigiously referring to a specific API as published by a specific
 entity at a specific version.

Hmm... no, I don't think I for one want that.  It would mean I can't make 
changes to third-party library from source A and still have third-party 
software from source B work against it without a manual hack-and-
recompile.  That would be against the spirit of Free Software, and the 
letter of the LGPLv3 (which I see you picked for s5 and I approve of).

Yes, it would be nice to have a way of *referring* to a specific (...) as 
you say.  But having all code by default *depend* on a specific version 
published by a specific entity?  Bad idea, IMO.

For the matter, I don't think Libraries should be distributed as a site, 
at all.  I think they should just import the Library object into the 
local host (possibly inside some safe location like /otd or /libraries 
or even /lib).  But it seems you have put some thought behind this 
decision; would you mind sharing your reasoning with us?

best,
   Lalo Martins
-- 
  So many of our dreams at first seem impossible,
   then they seem improbable, and then, when we
   summon the will, they soon become inevitable.
   -
  http://lalomartins.info/
GNU: never give up freedom  http://www.gnu.org/


___
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d


Re: [vos-d] s5 site ids

2008-02-10 Thread Lalo Martins
Also spracht Lalo Martins (Sun, 10 Feb 2008 08:18:05 +):
 This naming pattern unfortunately means you can't have two things
 (class, function, namespace) on the same directory.

... two things (...) with the same name in the same directory.

best,
   Lalo Martins
-- 
  So many of our dreams at first seem impossible,
   then they seem improbable, and then, when we
   summon the will, they soon become inevitable.
   -
  http://lalomartins.info/
GNU: never give up freedom  http://www.gnu.org/


___
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d


Re: [vos-d] s5 site ids

2008-02-10 Thread Reed Hedges
Lalo Martins wrote:
 AIUI from IRC conversations, the site IDs won't actually be visible to 
 the application programmer later on; we'll deal only with IDs like /vos/
 core/StringProperty.  (I'm not sure about the code namespaces, but I 
 hope some simplification is intended there too ;-) )  Peter has actually 
 told me a few days ago that side IDs being required for the type 
 attribute in XOD is a bug.  For now, we cope; the IDs are extra work, 
 but not really a killer.

Aha, that's nicer then, and sounds similar to how I was hoping it would 
work (with the name (e.g. StringProperty) as the actual name used by 
humans).  I will miss the foo:bar type syntax, but that's OK I guess if 
in the new syntax things are equally expressive but terse.

Curious what the bug is; what's missing from s5 that will fix this? 
(Curious so I can understand S5 a bit more.)


 All C++ files except for main.cc (and in my branch, plugin.cc) are 
 generated.  Here's how I observed it works:

Thanks!   Does one just run voscodegen with the xod file as input to 
generate the code?

Reed



___
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d


Re: [vos-d] s5 site ids

2008-02-10 Thread Lalo Martins
Also spracht Reed Hedges (Sun, 10 Feb 2008 12:35:21 -0500):
 Thanks!   Does one just run voscodegen with the xod file as input to
 generate the code?

$ cd debug/stage/bin
$ ./run.sh ./voscodegen -o ../../../src/app/helloworld ../../../src/app/
helloworld/HelloWorld.xod

best,
   Lalo Martins
-- 
  So many of our dreams at first seem impossible,
   then they seem improbable, and then, when we
   summon the will, they soon become inevitable.
   -
  http://lalomartins.info/
GNU: never give up freedom  http://www.gnu.org/


___
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d


Re: [vos-d] s5 site ids

2008-02-09 Thread Reed Hedges

The new type IDs are still bothering me a bit too (among other things, 
like the code namespaces).  A huge advantage of the old user-invented 
type names is that they were natural to understand and easy to remember. 
   We're going to have to do a lot of cutting and pasting, and when we 
get one digit wrong, will be tearing our hair out over it.  (Or the only 
option will be to use the GUI tool.)

Why not have a type/class have separate secure (crypto) ID, and name. 
  When you use a human-readable name in the UI client or in a XOD or 
whatever, VOS could just look up the OTD/record of the type/class and 
gets its crypto ID, and throw an error or ignore it if there are name 
conflicts or not found.  In the actual internal inter-object 
references/links it would use the crypto ID.


Also, what in the HelloWorld example is autogenerated and what isn't?

Reed




Lalo Martins wrote:
 Is there any rhyme or reason to site ids?
 
 If all libraries will ship a separate site (as XOD or something) with 
 their OTDs, won't that pollute the site id space?
 
 And aren't them bound to clash at some point?  Maybe set up a registry of 
 library site ids somewhere in the website?
 
 Or is this (library OTD) going to be substantially different later on?
 
 best,
Lalo Martins


-- 
http://interreality.org/~reed

___
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d


Re: [vos-d] s5 site ids

2008-02-08 Thread Peter Amstutz
On Fri, Feb 08, 2008 at 09:52:40AM +, Lalo Martins wrote:
 Is there any rhyme or reason to site ids?

The current testing site ids are not true site ids.  The site id is 
actually supposed to be the public half of a public/private key pair 
using elliptic curve cryptography.  A 128 bit key yields about 64 bits 
of security.

 If all libraries will ship a separate site (as XOD or something) with 
 their OTDs, won't that pollute the site id space?

 And aren't them bound to clash at some point?  Maybe set up a registry of 
 library site ids somewhere in the website?

The idea is for site ids to be globally unique, since there is only a 
1/2^128 chance of generating a collision.  In order to claim to be a 
site you have to prove that you know the corresponding private key, thus 
you can't just pick an aribtrary public site id (unless you know how to 
work backwards to get the private key, in which case the NSA would like 
to have a word with you.)
 
 Or is this (library OTD) going to be substantially different later on?

I understand your confusion, it isn't very meaningful at the moment 
because it is not yet doing any of the digital signature checking that I 
have planned.

I need to write a tool that spits out public/private keypairs for use 
with VOS.

-- 
[ Peter Amstutz ][ [EMAIL PROTECTED] [EMAIL PROTECTED]
[Lead Programmer][Interreality Project][Virtual Reality for the Internet]
[ VOS: Next Generation Internet Communication][ http://interreality.org ]
[ http://interreality.org/~tetron ][ pgpkey:  pgpkeys.mit.edu  18C21DF7 ]



signature.asc
Description: Digital signature
___
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d


Re: [vos-d] s5 site ids

2008-02-08 Thread Lalo Martins
Yet, you didn't address my actual point ;-)

I know what site IDs are supposed to be for.  My question is -- do we 
really want libraries to ship as a separate site each?  I realise the 
key space is pretty large, so polluting it is probably no big deal, but 
I see no big advantage in this case.  (You would need to ship the private 
key, anyway, right?)

best,
   Lalo Martins
-- 
  So many of our dreams at first seem impossible,
   then they seem improbable, and then, when we
   summon the will, they soon become inevitable.
   -
  http://lalomartins.info/
GNU: never give up freedom  http://www.gnu.org/


___
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d