[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [lojban] Re: hexadecimal and lojban
At 08:58 AM 6/18/2001, pycyn@aol.com wrote:
In a message dated 6/18/2001 2:39:19 AM Central Daylight Time,
thinkit8@lycos.com writes:
anyway, i was hoping the creators really
made dau-vai with the hope of hexadecimal as default in the future.
As the specification of bases makes clear, Lojban considers decimal as
fundamental.
I'm sorry to hear that. It should only be a default.
Anyway, duodecimal is the most convenient form for humans
(finger counting aside).
Humans have uses for binary, octal, decimal, duodecimal, hexadecimal, base
20, base 60, and all sorts of mixed bases, starting with 24 60 60. I would
prefer to see less cultural bias on this point, and less insistence that
one or another representation is inherently superior.
The best handling of base representations and evaluations is in APL and J,
which have them both as primitives called encode and decode, respectively.
Given the time of day in seconds as T, we can evaluate the J expression
24 60 60 #. T
to encode the time as hours, minutes, and seconds. Given time in a vector
(aka array) HMS, we can convert to seconds with
24 60 60 #: HMS
This also works for some of the truly weird bases, such as factorial
representation, non-integer bases, and complex bases, which can be found in
the writings of Knuth and Iverson. Fibonacci representations require a bit
more work.
<aside>
Another nice feature of J, following APL, is that
C #: X
evaluates the polynomial with coefficients C for the value X.
APL had a long-running rwar about whether to start counting at 0 or 1,
since it supported both options. Almost all of the business users preferred
to start at 1, while the mathematicians and non-business programmers
preferred 0. Iverson, being a mathematician, settled on origin 0 in creating J.
We all agreed, however, that the day should not begin at 12 0 0, with clock
time starting at 1 0 0 an hour later.
</aside>