The subject heading is LaTeX and that by itself is too confining. I have been using TeX since the 1990's and I have settled on pdftex and Context as my main forms. For me LaTeX is too verbose and too confining. Most of the typesetting functions in LaTeX are scattered in separate style files which sometime conflict with each other.
I use pdftex (augmented as needed by eplain.tex or occasionally pstricks.tex) for simple jobs and Context for highly formatted work.
Lyx should also be mentioned. It gives a semi-wysiwyg interface to LaTeX. It is a worthy project but I took off my training wheels years ago and don't need wysiwyg.
You should distinguish two things: the engine and the format. The engine is the executable program which understands about 300 primitive commands such as \begingroup, \hbox, \vskip etc. Its output is DVI. Several extended engines exist. Pdftex adds a few new primitives. First it is able to output PDF directly. It also introduces primitives implementing microtypographical features (character protrusion, hz-algorithm). E-tex introduces a few new primitive. EncTeX (by Petr Olsak) adds primitives for handling characters encoding conversion on input and output to the log file as well as auxilliary files. It is possible to read the file in UTF8 without the need of active characters. Using \futurelet\character\dosomething will always put the whole character into \character, not just the first byte of a multibyte character. All these extensions can be used both independently and together. In fact the nowadays engine is pdf-enc-e-tex and the extensions can be independently switched on and off. LUAtex adds the LUA scripting language and quite a new and different engine is XeTeX which works internally in Unicode and can access directly fonts installed in the operating system. Its output is XDV but it can transparently called an xdv-driver and output PDF.
Format is a collection of macros which are stored in binary dumped files. Of course they exist in plain text and are dumped during format initialization. The original format is plain TeX developed by Donald E. Knuth. It can work with all above mentioned engines. Other popular formats are LaTeX invented by Leslie Lamport and ConTeXt developed by Pragma ADE.
It is not true that LaTeX functionality is scatteres in a great many style files that sometimes conflict with each other. You have the LaTeX core with functionality described in its manual. You can use just this core and write your own macros. However, CTAN offers a lot of packages written by a lot of authors. They can be used with LaTeX but are not a part of LaTeX. There are recommendations how to write nonconflicting packages but some authors do not follow them. That's why you should make your document as simple as possible with just the packages that you really need. This reduces the risk of conflicts.
Zdenek Wagner - Ice Bear Soft, member of the Czechoslovak TeX Users Group
This forum is proudly sponsored by Datapage International who have provided typesetting services for over 20 years to international publishers. Concept and online marketing by Online Traction LLC.