(Arne Babenhauserheide)
2015-06-22: working round-trip working round-trip
diff --git a/examples/newbase60.w b/examples/newbase60.w --- a/examples/newbase60.w +++ b/examples/newbase60.w @@ -5,12 +5,13 @@ exec guile -L $(dirname $(dirname $(real ;; Encoding and decoding numbers in New Base 60 as defined by Tantek: ;; http://tantek.pbworks.com/NewBase60 -;; Based on the very elegant implementation from kevin marks: +;; Based on the very elegant implementation from Kevin Marks licensed under CC0: ;; https://github.com/indieweb/newBase60py/blob/master/newbase60.py define-module : examples newbase60 - . #:export : main + . #:export : integer->sxg sxg->integer . #:use-module : srfi srfi-1 +; . #:use-module : ice-9 match define base60letters "0123456789ABCDEFGHJKLMNPQRSTUVWXYZ_abcdefghijkmnopqrstuvwxyz" define base60numbers @@ -33,7 +34,7 @@ define : integer->sxg num cons (string-ref base60letters (remainder n 60)) s quotient n 60 -define : sxg->number string +define : sxg->integer string let loop : n 0 s string @@ -45,4 +46,5 @@ define : sxg->number string string-drop s 1 define : main args - display : sxg->number : integer->sxg 60 + display : sxg->integer : integer->sxg 60 +