Limits by Products and Equalizers The category $Cat$ of small categories is complete. Could you spell out with details the construction of the limit of a functor $F : J \to Cat$  by products and equalizers? (Mac Lane, Categories for the Working Mathematician, Chapter V, Section 2, Theorem 2)
 A: The limit of a functor $F :B \to C$ can be constructed as the equalizer of
$$s,t :\prod_A FA \longrightarrow \prod_{f : A \to B}FB$$
where $s$ and $t$ are the unique morphisms defined by
$$
\pi_{(f : A \to B)}s =\pi_B\\
\pi_{(f : A \to B)}t = (Ff)\pi_A
$$
and the universal cone is given by composing with the projections of $\displaystyle\prod\limits_A FA$.
In case $C = Cat$, note that $FA$ is a category for all $A \in B$, and $s$, $t$, and $Ff$ are functors. The functor $s$ is defined on an object $(X_A)_A \in \displaystyle\prod\limits_A FA$ as
$$s((X_A)_A) = (X_B)_{f : A \to B}$$
that is, the $(f : A \to B)$-component of $s((X_A)_A)$ is $X_B$. The functor $t$ is defined on $(X_A)_A$ as
$$t((X_A)_A) = ((Ff)(X_A))_{f : A \to B}$$
On the morphisms of the product category $\displaystyle\prod\limits_A FA$ (these are families of morphisms $g_A : X_A \to Y_A$ in $FA$ for each $A \in B$), the functors $s$ and $t$ are defined by the same formulas:
$$s((g_A)_A) = (g_B)_{f:A\to B}$$
and
$$t((g_A)_A) = ((Ff)(g_A))_{f:A\to B}$$
Finally, note that the limit appears as the subcategory of $\displaystyle\prod\limits_A FA$ consisting of objects and morphisms equalized by $s$ and $t$. Explicitly, an object of the limit $L$ is $(X_A)_A \in \displaystyle\prod\limits_A FA$ such that for all $f : A \to B$ we have $X_B = (Ff)(X_A)$, and a morphism between objects $(X_A)_A$ and $(Y_A)_A$ in $L$ is a family of morphisms $(g_A : X_A \to Y_A)_A$ in $\displaystyle\prod\limits_A FA$ such that $g_B = (Ff)(g_A)$ for all $f : A \to B$.
A: Limits of categories are given by limits of their underlying graphs (forget the composition operation,) which are easy to compute when you observe that a graph is just a set-valued functor from the category $\bullet\stackrel{\to}{\to}\bullet$. Sorry for ugly typesetting.
That is, the limit of a diagram of small categories $(C_i,i\in I)$ is just the corresponding limit of the sets of morphisms $(C_i^1)$ and the sets of objects $(C_i^0)$, with source and target operations induced from those of the $C_i$. The identities are composition are naturally determined by those in the $C_i$, so if you can compute limits of sets, you can compute limits of categories. N.B. This doesn't work at all for colimits-many colimits of categories are heinous! Categories are monadic over graphs, but monadic functors don't generally preserve colimits.
To hew closer to MacLane's plan and to illustrate this, let's compute products and equalizers. Products are very straightforward: objects of $\prod C_i$ are tuples $(c_i)_{i\in I}$ and morphisms tuples $(f_i)_{i\in I}$ with $c_i$ and objects and $f_i:c_i\to c'_i$ a morphism of $C_i$. The composition is componentwise and the identity of $(c_i)$ is $(\text{id}_{c_i})$ the family of identities of the objects $c_i$. Similarly, equalizers: the equalizer of $F,G:C\to D$ has objects $c$ of $C$ such that $F(c)=G(c)$ and morphisms $f:c\to c'$ such that $F(f)=G(f)$, with identities and composition inherited from $C$. As advertised, in both cases we just take the limit of morphism sets and the limit of object sets, and connect them in the natural way. And this explicit description allows you to use the general theorem to give an explicit description of arbitrary limits of categories-which we've seen will reduce to just using the explicit description of arbitrary limits of sets, twice.
