People often talk about the many "typesetting wonders" (La)TeX can do because of the countless algorithms it uses. But exactly what are these typesetting algorithms? Concrete examples I have gathered are (even if I do not really know how they work)

  • The Knuth-Plass line-breaking algorithm
  • The Boxes & Glue model
  • Float positioning (which unfortunately does not work as flawlessly as one could have hoped)

Are these all of them, or are there more?

closed as too broad by Martin Schröder, Mensch, Sean Allred, Svend Tveskæg, Jesse May 26 '15 at 14:33

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 4
    what do you mean by "algorithm" or "use" here? Only the last of the three you mentioned is implemented in latex, the first two are part of the tex engine so used by latex just because it's written in tex. The first one isn't "Knuth's algorithm" it was Michael Plass's PhD thesis, So usually known as Knuth-Plass after the joint paper they published. – David Carlisle May 26 '15 at 11:42
  • 1
    KOMA-Script uses different algorithms to determine the size of the margins. – Juri Robl May 26 '15 at 11:42
  • 1
    There are some packages which implement some typographical stuff, like microtype, impnattypo and selnolig. Also of course the way hyphenation points are found. – Juri Robl May 26 '15 at 11:53
  • 2
    This is really too broad in current form IMHO. As David notes, all of LaTeX is really an "algorithm" for some suitable definition of "algorithm" (a procedure for solving a problem). I'd suggest narrowing the scope of this question. – Paul Gessler May 26 '15 at 12:16
  • 1
    @Gaussler the problem is the same: everything in the LaTeX kernel is arguably 'a procedure for solving a typesetting problem'. – Paul Gessler May 26 '15 at 12:25