NOTE: Article in Progress

A lot of work is still needed to improve the availability of information in multiple human languages. With the growing usage of internet and that of mobile devices, we require more content developers and programmers who can produce informative articles in their local languages. There are two major aspects towards providing a multilingual user experience: human-computer interface and programming language. In this article, the current state of programming in multilingual human languages is explored with examples. How do different programming languages respond to multilingual messages, multilingual variable, class or function names?

Introduction

Mobile phones and computers have become an integral part of human lives and internet usage is growing across all the world. It is important to understand the different ways by which we human users communicate with the computer. Graphical user interfaces and command line are some of the commonly used ones. Graphical user interfaces provide users a menu and a set of available options and users choose the desired option either by mouse or some keyboard shortcuts. There has been a growing trend by application developers and service providers to provide user interfaces in local languages so that users can interact with an application in their local languages. However, the number of supported languages is significantly lower compared to nearly 7000 human languages. We recently celebrated the International year of indigenous languages in 2019, which brought the discussion of indigenous languages on an international level. This year-long campaign brought attention to the fact that a lot needs to be done to save a number of languages from extinction.

Graphical user interface takes into account the users of a given software or service. But what about the developers of these softwares, services and their associated interfaces. It has been observed that a large number of programming languages use English-like keywords1. Even the command line2 with its subcommands and associated parameters make a significant use of English words or abbreviations and mnemonics built from English words.

Conclusion

However, one major remark is that none of the selected languages provides multilingual keywords in their specifications and hence not explored here.

References

  1. Coding Is for Everyone—as Long as You Speak English
  2. Rethinking the command-line
  3. Non-English-based programming languages
  4. Natural Language Programming
  5. van der Storm, Tijs, and Jurgen J. Vinju. “Towards Multilingual Programming Environments.” Science of Computer Programming, vol. 97, Jan. 2015, pp. 143–49. ScienceDirect, doi:10.1016/j.scico.2013.11.041
  6. Language-independent specification
  7. The transition to multilingual programming