gm2
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

M2Unit? (was Re: Unicode I/O for GM2)


From: Alice Osako
Subject: M2Unit? (was Re: Unicode I/O for GM2)
Date: Wed, 27 Mar 2024 00:01:38 -0400
User-agent: Mozilla Thunderbird

Gaius Mulley:
Alice Osako <alicetrillianosako@gmail.com> writes:

Gaius, I have to thank you for your explanation of how to output UTF-8
to the console. It works exactly as intended so far as I can tell.
you're welcome - I was both relieved and surprised to see the Euro glyph
appear on the terminal!
I can see that being the case, yes. As of now, my Console test has the following output:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 0: 'a' [U+0061] is a valid codepoint; is a printable ASCII character; is in the BMP. -> 97 -> 'a'  1: 'a' [U+0061] is a valid codepoint; is a printable ASCII character; is in the BMP. -> 97 -> 'a'  2: 'a' [U+0061] is a valid codepoint; is a printable ASCII character; is in the BMP. -> 97 -> 'a'  3: 'Ġ' [U+0120] is a valid codepoint; is not a printable ASCII character; is in the BMP. -> 288 -> 'Ġ'  4: 'Á' [U+00C1] is a valid codepoint; is not a printable ASCII character; is in the BMP. -> 193 -> 'Á'  5: 'Á' [U+00C1] is a valid codepoint; is not a printable ASCII character; is in the BMP. -> 193 -> 'Á'  6: 'Ł' [U+0141] is a valid codepoint; is not a printable ASCII character; is in the BMP. -> 321 -> 'Ł'  7: '�' [U+FFFD] is a valid codepoint; is not a printable ASCII character; is in the BMP. -> 65533 -> '�'  8: '𐐁' [U+10401] is a valid codepoint; is not a printable ASCII character; is not in the BMP. -> 66561 -> '𐐁'  9: '𐐁' [U+10401] is a valid codepoint; is not a printable ASCII character; is not in the BMP. -> 66561 -> '𐐁' 10: '�' [U+FFFD] is a valid codepoint; is not a printable ASCII character; is in the BMP. -> 65533 -> '�' 11: '!' [U+0021] is a valid codepoint; is a printable ASCII character; is in the BMP. -> 33 -> '!' 12: 'ธ' [U+0E18] is a valid codepoint; is not a printable ASCII character; is in the BMP. -> 3608 -> 'ธ'
Passes: 39
Fails:  0
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

I specifically added the last one (THAI CHARACTER THO THONG) because it was mentioned in Chris Lilley's original code as an example codepoint, and I could easily use the known codepoint value to confirm that the translations worked as intended.

This test, along with three others, can be found at

https://github.com/Schol-R-LEA/UNICODE-For-Modula-2/tree/main/tests

The accompanying Makefile has targets for each of these.

However, having to write unit tests manually has led me to considering writing an xUnit framework for Modula-2, to the point where I have set up a repo for such a project.

https://github.com/Schol-R-LEA/M2Unit

However, this is a major undertaking, and more importantly, I have no idea of how to implement such a framework. I suspect I will be studying the problem, and existing solutions, for at least a few weeks before I can even consider coding on it.

Any advice on this process would be appreciated.

PS: I have reached out to Chris Lilley about the UNICODE project fork, and he has no problem with what I have done. I've just sent an email asking him about possibly re-licensing it as LGPL, and await his reply.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]