Blob


1 .tr -\(hy
2 .TL
3 Hello World
4 .br
5 or
6 .br
7 Καλημέρα κόσμε
8 .br
9 or
10 .br
11 こんにちは 世界
12 .AU
13 Rob Pike
14 Ken Thompson
15 .AI
16 .MH
17 .AB
18 Plan 9 from Bell Labs has recently been converted from ASCII
19 to an ASCII-compatible variant of Unicode, a 16-bit character set.
20 In this paper we explain the reasons for the change,
21 describe the character set and representation we chose,
22 and present the programming models and software changes
23 that support the new text format.
24 Although we stopped short of full internationalization\(emfor
25 example, system error messages are in Unixese, not Japanese\(emwe
26 believe Plan 9 is the first system to treat the representation
27 of all major languages on a uniform, equal footing throughout all its
28 software.
29 .AE
30 .SH
31 Introduction
32 .PP
33 The world is multilingual but most computer systems
34 are based on English and ASCII or worse.
35 The pending release of Plan 9 [Pike90], a new distributed operating
36 system from Bell Laboratories, seemed a good occasion
37 to correct this chauvinism.
38 It is easier to make such deep changes when building new systems than
39 by retrofitting old ones.
40 .PP
41 The ANSI C standard [ANSIC] contains some guidance on the matter of
42 `wide' and `multi-byte' characters but falls far short of
43 solving the myriad associated problems.
44 We could find no literature on how to convert a
45 .I system
46 to larger character sets, although some individual
47 .I programs
48 have been converted.
49 This paper reports what we discovered as we
50 explored the problem of representing multilingual