Proquints: Identifiers that are Readable, Spellable, and Pronounceable.
License
dsw/proquint
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
master
Could not load branches
Nothing to show
Could not load tags
Nothing to show
{{ refName }}
default
Code
-
Clone
Use Git or checkout with SVN using the web URL.
Work fast with our official CLI. Learn more.
- Open with GitHub Desktop
- Download ZIP
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
…I was asserting decoded ints to be at most Integer.MAX_VALUE, which in Java is _signed_ MAX_VALUE; fix this by (1) using longs as my unsigned ints (Java does not have unsigned ints) and further (2) by removing the gratuitous check against Integer.MAX_VALUE; * as suggested by a user, add zuzuz-zuzuz as a test input proquint as doing so exhibits the above bug; also simplify the decoding by shifting then masking; also audit/cleanup the regression test scheme generally: * fix regression test to 'diff -u correct expected' so changes to the output show up as the addition of something new, rather than the removal of something old and further are output in the unified diff format; * add the script revcp which is handy for accepting regression test output;
f9ca581
Git stats
Files
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
Proquints:
Identifiers that are Readable,
Spellable, and Pronounceable
Daniel S. Wilkerson
Welcome!
Please see the article on proquints: http://arXiv.org/html/0901.4016;
A local copy is in proquint-proposal.txt and this can be converted to
proquint-proposal.gen.html by typing "make".
For the C and Java implementations: run "make clean all check" to
build and check. After that you can run "make demo" for a simple demo
and "make examples" for more examples.
Local implementations by Daniel S. Wilkerson:
* C implementation: proquint.c converts between proquint, hex, and
decimal strings.
* Java implementation: Proquint.java converts between proquint, hex,
and decimal strings.
Local implementations by others:
* Python implementation by Ruslan Shestopalyuk: converts between
proquint, hex, decimal and IPv4 address strings. Installs a script
'proquint', which can be used to convert between above
representations via command line (see python/README.md)
* Javascript implementation by Luděk Rašek: The code is in
js/proquint.js. Try it in js/proquint.html for values of arbitrary
length. Demo is accessible as github page:
http://l-ra.github.io/proquint/js/proquint.html
Remote implementations by others:
* Elixir implementation by Khaja Minhajuddin: Converts binaries to
proquint encoded strings, Decodes proquint encode strings to
binaries. Implementation can be found at
https://hexdocs.pm/proquint/Proquint.html
* Elm implimentation:
- Install with `elm install michaelglass/proquint`.
- Docs are here:
https://package.elm-lang.org/packages/michaelglass/proquint/latest/Proquint.
* Perl implementation by Mark Lawrence: Can also be installed from
CPAN with cpan Proquint (or +cpanm+ if one has it installed).
https://github.com/mlawren/p5-Proquint
* Rust implementation by Christian Blades: Crate at
https://crates.io/crates/proquint, source at
https://github.com/christian-blades-cb/proquint-rs
* Go implementation by Nat Welch: https://github.com/icco/proquint
See License.txt for copyright and terms of use.
The proquint home is http://github.com/dsw/proquint.
History:
* 9 January 2009: initial release
* 8 April 2012: add Java implementation
* 30 December 2015: add Javascript implementation by Luděk Rašek
* 3 October 2017: add Python implementation by Ruslan Shestopalyuk
Enjoy.
-- Daniel
About
Proquints: Identifiers that are Readable, Spellable, and Pronounceable.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published