libuuid
Jan Dvorak <mordae@anilinux.org>
Interface to the libuuid library usable to generate high-quality UUIDs.
(require libuuid) | package: libuuid |
procedure
(uuid-generate) → string?
> (uuid-generate) "c15a87ec-139f-4232-99fa-7a439d52f40e"
> (uuid-generate) "a3f9080d-e5a5-42d7-bacd-01ee610a0fda"
procedure
Can be used to prevent any chance of host’s MAC address leaking, at the cost of slightly higher chance of generating non-unique identifiers if the worst-case situation arises on multiple hosts.
> (uuid-generate/random) "34231555-2312-4d82-b380-301f50bfed8f"
> (uuid-generate/random) "7206271f-0d6f-41ba-b72d-390da9f39207"
procedure
Could potentially produce non-uniqueue identifiers if used concurrently so if you do not absolutely need sequential identifiers, stick with the generic (and safe) uuid-generate function above.
> (uuid-generate/time) "c80fca08-2bba-11f0-b3e1-fb709d39d180"
> (uuid-generate/time) "c80ff294-2bba-11f0-b3e1-fb709d39d180"