Origins and applications of Theory A vs Theory B? In a couple recent questions (q1 q2), there has been discussion of "Theory A" vs "Theory B", seemingly to capture the divide between the study of logic and programming languages and the study of algorithms and complexity.

This terminology was new to me, and a quick web search didn't come up with any obvious references explaining it.

Does anyone know of a reference or references that explain the origin of this terminology, and what, if any, substantive benefit is intended to be derived from making this distinction?
It comes from the handbook on theoretical computer science, which had two volumes: A was for algorithms and complexity, and B was for logic and semantics. 

Jukka, did ICALP predate this ? Or was it in response to this ? 

As for benefits, I think there's always some utility in taxonomizing areas based on topics of interest, and forms of study. However, as with all taxonomizations, the problem comes when you forget to "go back up the tree and down the other side" :). 

EDIT: as ICALP explicitly states, this division comes from the Elsevier journal Theoretical Computer Science, which itself predates the handbook, so I think that's a more accurate source. 

EDIT ++: From the history of the EATCS comes this snippet about TCS, the journal:


  Since that time M. Nivat, who is still
  Editor-in-Chief has reported regularly
  to council and general assembly and
  occasionally in the Bulletin - e.g.
  when the split into sections A
  (automata, algebra und algorithms) and
  B (logic, semantics and related
  topics) was decided upon (Bulletin no.
  45, p.2,3, October 1991);


which yields 1991 as when this first started happening at the journal. However, the Handbook was first published in September 1990 !