Definition of TeX
TeX can be defined as typesetting language, where the source code of the language is converted into a typesetting document rather than an executable one. The language consists of its own set of commands and syntax.
However, the wide variety of the formats of TeX provides it with an extensive base of commands.
History of TeX Programming Language
On 13th of May 1977, Donald Knuth initiated the development of the language by writing a personal memo to highlight the basic features of TeX to himself.
Knuth had the plan of finishing the development of TeX by the year 1978, however this did not happen by the year 1989. The I/O of TeX was rewritten by Guy Steele in order to enable the language to function in the ITS operating system. The initial version of language TeX was in SAIL programming language.
This enabled the language to run under WAITS operating system on a PDP-10. The concept of literate programming, on the other hand, was developed for the newer versions of the language.
TeX82, which was written from zero, was a new version of TeX that was introduced in the year 1982. Apart from some other chances, one of the major changes was the replacement of the original hyphenation algorithm by a fresh algorithm. The writer of the algorithm was Frank Liang.
Knuth published newer versions of the language in 1989. Even though Knuth was working on making the language stable, but he agreed to the fact that only 128 characters for the input of text was not sufficient for the accommodation of foreign languages. The basic development, therefore, in the version 3.0 was the availability of 256 characters and 8 bit input.
This indicates that the language now has attained a stable stage. The newer updates, with TeX 3.14159265 of 2014 being the latest, mainly aim at addressing minor bugs. Knuth stabilized and fixed the design with version 3.0 and left no space for new features or fundamental changes.
As a public domain holds the source code of TeX, therefore, other programmers are allowed and encouraged to make enhancements in the program. This means that the source code can still be modified, however, a new name is to be given to the modified version of the source code.
For instance, the Omega project, which improved the multi lingual typesetting abilities of the language, was introduced after the year. To introduce the modification made by Omega project Knuth created different unofficial versions, such as TeX-XeT.