Sivakatirswami, the question is how unique do you need it to be -
this is not a simple question :)
if you need it to be unique only in your own domain (as it were),
then your function is probably fine, but if it needs to be unique in
the wider world, then maybe not.
The little library ( http://www.futility.co.uk/futsoft/
revolutionstuff.html ) that I wrote follows the relevant RFC - so, in
theory, it's output has 'wider' uniqueness - the subject is quite
involved, when you get into it.
Best Mark
On 21 Jun 2008, at 05:12, Sivakatirswami wrote:
I'm building a PicLens Publisher here that will do pretty much what
the current PicLens Publisher does from CoolIris, with some
additions to their Media RSS format that their app does not do.
(see www.piclens.com)
One thing I need to emulate is their GUID (Global Unique ID)
generator which outputs unique len(36) random strings like
557B4610-65DC-4FEA-B6DC-32C3FA4B374D
24D2C85A-DD13-4B5D-9CCF-8F3ADC3E6CC7
6B8CD7AA-11B5-4A0D-8EF1-0D6B18C80A17
0B7815AE-AC47-457D-B2CA-F0280947220D
there is no significance to these strings other than that the
uniqueness of the string being close to infinity i.e. unlikely
every to be duplicated again.
This is something brand new for me... I'm curious if anyone knows
the patterns here or has any idea of the algorithm being used. It
does appear that the alpha chars are always a) caps b) never go
beyond F This hints at a hexidecimal system underlying the algorithm.
I presume one could request a random selection from the hex set:
0123456789ABCDEF
and call this 36 times. i don't know why there is any need for
hyphenated segments other than for readability....
But, it's pretty simple to write a generator the appears to emulate
the algorithm.. I have this so far and it seems to do the job...
any insights?
on mouseUp
repeat 5 times
repeat 9 times
put GetRandomHex() after tGUID
end repeat
put "-" after tGUID
repeat 3 times
repeat 4 times
put GetRandomHex() after tGUID
end repeat
put "-" after tGUID
end repeat
repeat 12 times hexSet [tPickAnyOne]
put GetRandomHex() after tGUID
end repeat
put tGUID & cr after tOutPut
put empty into tGUID
end repeat
put tOutPut
end mouseUp
function GetRandomHex
put "0 1 2 3 4 5 6 7 8 9 A B C D E F" into hexSet
split hexSet by " "
put random(16) into tPickAnyOne
return hexSet [tPickAnyOne]
end GetRandomHex
delivers
F2ACEA9EB-C3A5-F4CE-05B5-92888E1E80FA
66A5365D3-EF9A-EF00-66EB-6C82663130B7
65634AD6D-8577-A757-310F-47287CF85389
E2A1DC66D-C58C-1F26-26BF-35EA95A46B5C
BC04061AC-E3C5-3DEC-6EF3-7397B7757F8A
Seem OK?
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution