Unicode: Difference between revisions

Jump to navigation Jump to search
6 bytes added ,  01:01, 27 December 2019
Line 10: Line 10:
The whole basis for the confusion in a lengthy thread on comp.lang.apl entitled ''caret vs and''<ref>[https://groups.google.com/forum/#!forum/comp.lang.apl comp.lang.apl]. [https://groups.google.com/d/msg/comp.lang.apl/LTV-HTxEZI0/DAPcTrVPnmwJ caret vs and]. 28 Oct 2013&ndash;9 Dec 2013</ref> was that in some implementations the symbol for the logical [[And]] function was U+005E only, in some implementations it was U+2227 only, and in some both characters worked. The original poster encountered some APL text from the [[APL Wiki]] that had been produced by a system that supports U+005E and copied it into a system that used U+2227 only and failed on U+005E.
The whole basis for the confusion in a lengthy thread on comp.lang.apl entitled ''caret vs and''<ref>[https://groups.google.com/forum/#!forum/comp.lang.apl comp.lang.apl]. [https://groups.google.com/d/msg/comp.lang.apl/LTV-HTxEZI0/DAPcTrVPnmwJ caret vs and]. 28 Oct 2013&ndash;9 Dec 2013</ref> was that in some implementations the symbol for the logical [[And]] function was U+005E only, in some implementations it was U+2227 only, and in some both characters worked. The original poster encountered some APL text from the [[APL Wiki]] that had been produced by a system that supports U+005E and copied it into a system that used U+2227 only and failed on U+005E.


When systems differ in the set of acceptable characters for the same function, it serves only to confuse the end user to the detriment of the community. The cautious APL programmer can avoid such problems by choosing symbols that work across dialects. Note that in the below table, there is exactly one universally accepted codepoint for each symbol (these have been indicated by a single "Yes" cell stretching across the row), except for And where APL2 doesn't recognise the otherwise universal U+2227. However, APL2 does not have And extended to Least Common Multiple, so it is equivalent to Times (<source lang=apl inline>×</source>) which can therefore be used instead for truly portable code.
When systems differ in the set of acceptable characters for the same function, it serves only to confuse the end user to the detriment of the community. The cautious APL programmer can avoid such problems by choosing symbols that work across dialects. Note that in the below table, there is exactly one universally accepted codepoint for each symbol (these have been indicated by a single "Universal" cell stretching across the row), except for And where APL2 doesn't recognise the otherwise universal U+2227. However, APL2 does not have And extended to Least Common Multiple, so it is equivalent to Times (<source lang=apl inline>×</source>) which can therefore be used instead for truly portable code.


==Comparison of implementations==
==Comparison of implementations==

Navigation menu