Re: Solidus variations

From: Hans Aberg <haberg-1_at_telia.com>
Date: Fri, 7 Oct 2011 21:44:56 +0200

On 7 Oct 2011, at 21:16, Asmus Freytag wrote:

> On 10/7/2011 11:27 AM, Hans Aberg wrote:
>> The context I have in mind is a computer that largely sticks to the ASCII tradition, but otherwise uses new Unicode additions to make input more math-like.

> that's essentially the same goal as behind the design of the "Mathematics Linear Format" described in Unicode Technical Note #28 (http://www.unicode.org/notes/tn28/UTN28-PlainTextMath-v3.pdf).

Yes, the goal is the same, but there are many ways to do a computer language. I am really interested in what kind of type theory to choose, commensurate with practice for basic types.

> You could do worse than making this your starting point. Murray has spent years, probably decades working out the details of this format and there are working implementations that use it.

Well, see how you resolve the conundrum of 1/2/3/4, which in computer languages typically parses as ((1/2)/3)/4. Changing the meaning of ASCII "/" as division would cause a lot of confusion.

Now, add a lexer that parses rational numbers, along with division "/". Then 1/2/3/4 parses as (1/2)/(3/4), as the lexer finds the tokens "1/2", "/", and "3/4". So keeping "/" as division spoils tokenized rational numbers.

One can fix this by using ⁄ U+2044 FRACTION SLASH for rational numbers, like in 1⁄2/3⁄4. Or by using a long slash as a division with lower precedence, say ∕ U+2215 DIVISION SLASH; the meaning of 1/2∕3/4 then becomes clear.

Hans
Received on Fri Oct 07 2011 - 14:49:24 CDT

This archive was generated by hypermail 2.2.0 : Fri Oct 07 2011 - 14:49:26 CDT