Fundamentals 14 min read

Uncovering Wang Xiaobo: The Writer Who Pioneered Chinese Software in the Early 1990s

This article chronicles the little‑known programmer side of celebrated Chinese writer Wang Xiaobo, detailing his self‑taught mastery of FORTRAN, C, and assembly, his creation of a Chinese input method and editor, and the vivid correspondence that reveals his early 1990s software development challenges and achievements.

ITPUB
ITPUB
ITPUB
Uncovering Wang Xiaobo: The Writer Who Pioneered Chinese Software in the Early 1990s

Background

In the late 1980s and early 1990s, Wang Xiaobo, a Chinese economist and statistician, taught himself FORTRAN, assembly, and C in order to write his own statistical and text‑processing tools. The scarcity of Chinese software and the limited availability of IBM‑compatible PCs in China forced him to develop a Chinese editor and a four‑tone pinyin input method from scratch.

Key Technical Contributions

1988 December – Requested copies of IBM‑compatible statistical packages (SAS, SPSS, Statistx) and an APL implementation, highlighting the lack of Chinese‑language software on domestic machines.

1990 January – While performing statistical work for Peking University, noted that only SPSS was usable and inquired about the S language for matrix and distribution‑function calculations.

1990 May – Discussed the rapid growth of the IBM‑PC compatible market, the upcoming Intel CPU generations, and a theoretical statistical model based on multiple dummy (binary) variables forming a joint distribution on a hypersphere.

1991 February – Reported incompatibility of IBM Chinese software on certain graphics‑monitor machines and the limited presence of Macintosh computers in China.

1991 March – Compared his own B‑tree‑based phrase‑dictionary input program with the “Yan‑shi 2.0A” software, praising its four‑tone pinyin scheme.

1991 May (first entry) – Discovered that his software required a floating‑point coprocessor (8087/80287), which many domestic PCs lacked.

1991 May (second entry) – Invented a glyph‑generator‑based method for rendering Chinese characters on Western software windows, enabling Chinese text in applications such as SPSS.

1991 September – Rebuilt a C‑based Chinese input program after a floppy disk was damaged; credited a friend for teaching him C.

1992 January – Compilation Details tcc -mc -ewka:wk*.c a:wk5.obj graphics.lib The program consisted of five C source files, two header files, and one assembly module (compiled to wk5.obj ). It required three support files: yindian , cclib , and egavga.bgi . The resulting executable was about 55 KB, compact but with limited graphics update speed compared to the Yan‑shi version.

1992 July – Upgraded an aging PC/XT, added recursive features to his editor, and planned to write C code that could run in virtual‑address protected mode on a new 286 machine.

1992 September – Shifted focus entirely to custom C tools for novel writing; abandoned reliance on third‑party IBM software.

1993 March – Purchased a 286 and completed a protected‑mode editor capable of loading and editing files up to 400 KB. The system ran with 1 MB RAM but lacked a hard disk, limiting further expansion. The editor used low‑level port I/O for performance, which reduced compatibility on newer hardware.

Technical Observations

The correspondence illustrates several recurring challenges of early Chinese computing:

Hardware scarcity: many machines lacked floating‑point units, hard drives, or sufficient RAM.

Software incompatibility: Chinese language support was often missing or broken on IBM PCs.

Low‑level programming: Wang frequently mixed C with assembly, dealt with memory models (compact vs. small), and managed graphics via BGI libraries.

Data‑structure focus: He continuously refined his B‑tree phrase dictionary and explored recursive algorithms to improve editor functionality.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

C languagesoftware historyWang Xiaoboinput methodFortranliteratureChinese programming
ITPUB
Written by

ITPUB

Official ITPUB account sharing technical insights, community news, and exciting events.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.