Towards the end of the nineteenth century, Frege gave us the abstraction principles and the general notion of functions. Self-application of functions was at the heart of Russell's paradox. This book gathers much of their influential work and is useful for those interested in type theory.