Linux and the Euro Currency: Toward a Global Solution
Starting in 1999, each European be using this new currency in his everyday life. Even if cash is not yet available, most prices, wages, invoices, etc. will be labelled in euro as well as in national currencies.
In 2002, each local currency except for the British pound (£), Danish krøner (kr), Swedish Kroner and Greek drachma will be replaced by the Euro. This is a major move for a real European union, which will create a market of 300 million people, from Finland to Portugal and Ireland to Greece.
Euro and year 2000 support are currently the biggest problems for computer scientists. On UNIX systems where a kind of Y2K bug will not occur until 2038, the euro is the major problem. On Windows machines, Y2K is the major problem since Microsoft has already integrated support for the Euro in Windows 98 and NT. A new proprietary norm was created, called cp1252, which makes these systems the first to properly support the Euro.
The transition from local currencies to the euro also implies mathematical conversions in financial programs: one euro equals 6.55957 French francs, for example. One euro is approximately one dollar U.S. The European Community created a “Euro Workshop” and “Euro Project Team” to find any possible solution for all types of platforms, even cellular phones. Most of the documents can be found at http://www.stri.is/TC304/Euro/. I used some of their euro symbol pictures to illustrate this article.
UNICODE was a good candidate for supporting national characters, but X Window System font management would have made it a pain to implement. For example, see plan9 difficulties at http://www.gh.cs.usyd.edu.au/~matty/9term/. Moreover, the numeral console-mode applications could not take advantage of UNICODE: even today, video-card memory is too tight to hold this wide range of characters. Clearly, a solution was needed for UNIX and other 8-bit systems.
A possible solution was creating yet another encoding format for 8-bit systems, which even today do not support the whole range of national characters. For example, it is impossible to create an “oe ligature” or an “s caron” in iso-8859-1, even though they are widely used in several European languages:
“oe ligature”: the French words boeuf, coeur, oeil, the German poet Goethe
“s caron”:koda cars
I can hardly imagine a computer where not all 26 alphabetic letters were available, or where u had to be used in place of v because it had not been implemented in its character set. Yet many non-English speaking people face this problem each day when using keyboards without characters such as the “oe ligature” (
Taking advantage of this situation and lack of the euro symbol in iso-8859-1 latin1 (ISO 8859-1 latin1 is the UNIX encoding format, i.e., a correspondence between letters and codes, also used for email encoding), a new encoding format project was started, which would support:
“oe ligature” in both upper case and lower case
“s and z caron” in both upper case and lower case
“y diaeresis” in upper case only since (ÿ) already exists in latin1
To avoid breaking compatibility with the widely used iso-8859-1 latin1, it was decided that this new encoding would be based on it. However, there was still a big problem—each of the 255 possible characters existing in an 8-bit encoding had already been assigned in iso-8859-1. Therefore, it was decided that less frequently used characters should be removed to allow integration of the missing ones. In addition, the following changes were made:
The euro replaced the “international currency sign” (¤): the symbol the former Soviet Union had wanted to replace the dollar sign in 7-bit ASCII encoding format.
“oe” and “oe ligature” replaced the one-half fraction mark (½) and one-quarter fraction mark (¼), respectively.
“s caron” and “S caron” replaced “broken bar” (¦) and “floating diaeresis” (¨), respectively.
“z caron” and “Z caron” replaced “floating acute” (') and “floating cedilla” (¸), respectively.
“Y diaeresis” replaced “three quarter” (¾).
Since the cedilla (¸) looks like a comma (,), the diaeresis looks like a double quote (“) and the acute looks like a single quote ('), they could easily be replaced; compose tables would need a minor update. For example, on French and Dutch keyboards, the (”) key is used to get äëïöüÄËÏÖÜ but not “Y diaeresis”, which is missing. One must simply press it, release it (nothing happens) then press a vowel key to get a “vowel diaeresis”.
If there is any other character but a vowel, (“) shows up. Here, adapting to the new encoding would simply mean replacing the latter case by a (”) and adding composing possibilities for (sSzZ). This new encoding is called iso-8859-15 latin9 (nicknamed latin9) to show it is 97% compatible with iso-8859-1 latin1. By the time this article is published, it should already have been approved by ISO.
|PostgreSQL, the NoSQL Database||Jan 29, 2015|
|HPC Cluster Grant Accepting Applications!||Jan 28, 2015|
|Sharing Admin Privileges for Many Hosts Securely||Jan 28, 2015|
|Red Hat Enterprise Linux 7.1 beta available on IBM Power Platform||Jan 23, 2015|
|Designing with Linux||Jan 22, 2015|
|Wondershaper—QOS in a Pinch||Jan 21, 2015|
- PostgreSQL, the NoSQL Database
- Sharing Admin Privileges for Many Hosts Securely
- HPC Cluster Grant Accepting Applications!
- Designing with Linux
- Wondershaper—QOS in a Pinch
- January 2015 Issue of Linux Journal: Security
- Internet of Things Blows Away CES, and it May Be Hunting for YOU Next
- Ideal Backups with zbackup
- Red Hat Enterprise Linux 7.1 beta available on IBM Power Platform
- Slow System? iotop Is Your Friend
Editorial Advisory Panel
Thank you to our 2014 Editorial Advisors!
- Jeff Parent
- Brad Baillio
- Nick Baronian
- Steve Case
- Chadalavada Kalyana
- Caleb Cullen
- Keir Davis
- Michael Eager
- Nick Faltys
- Dennis Frey
- Philip Jacob
- Jay Kruizenga
- Steve Marquez
- Dave McAllister
- Craig Oda
- Mike Roberts
- Chris Stark
- Patrick Swartz
- David Lynch
- Alicia Gibb
- Thomas Quinlan
- Carson McDonald
- Kristen Shoemaker
- Charnell Luchich
- James Walker
- Victor Gregorio
- Hari Boukis
- Brian Conner
- David Lane