This is a graduate-level textbook on the theory of functions of one complex variable. It consists of two parts. The first part of the book is a corrected reprint of the first edition by Narasimhan (which unfortunately contained no exercises). The second part of the book, written by Nievergelt, consists of 365 exercises. The exercises are well-structured, often explain their purpose, and both reinforce and expand on concepts covered in the text. As a preliminary, the exercises also include some review of complex numbers and topology.

Like its first edition, this book is an excellent reference on the theory of functions of one complex variable. But, now that it includes exercises, this book is well-suited as a textbook for an advanced graduate course in complex analysis. Indeed, there is enough material for a two-semester sequence in graduate complex analysis.

The presentation is elegant and very efficient, but not gentle. The proofs are clear and complete. But explanatory and motivational statements are brief. Thus I would not recommend this book for a first graduate course in complex analysis unless the students were exceptionally well-prepared or the book was to be used as part of a two-course sequence.

This book has several prerequisites. The reader should be very comfortable with calculus in several variables, linear algebra, and epsilon-delta analysis. A course in point-set topology is also necessary, as concepts like local compactness and connected components are used freely and in essential ways. An undergraduate course in complex analysis would be desirable. In a few places, basic results from functional analysis (including the Hahn-Banach and closed graph theorems), Lebesgue integration (including Lebesgue measure and the standard convergence theorems), and theory of rings and ideals are needed.

This book includes all the essentials for a graduate course in complex analysis: Cauchy-Riemann equations, contour integration and residue theory, maximum modulus principle, normal families and Montel's theorem, analytic continuation, the Great Picard Theorem, Runge's theorem, the Riemann mapping theorem, Riemann surfaces, harmonic functions. All these topics are presented clearly and thoroughly.

Additionally, there are several remarkable features and inclusions in this book:

- A proof of the Looman-Menchoff theorem (which says continuity and satisfaction of the Cauchy-Riemann equations implies complex differentiability in an open set, without any hypothesis on the continuity of the partial derivatives).
- Homotopy, homology, and cohomology forms of Cauchy's theorem.
- A solution of the inhomogeneous Cauchy-Riemann equations and an associated variant of the Cauchy integral formula.
- A chapter on several complex variables which establishes the essential theory and illustrates the contrast between the behavior of functions of one and several complex variables (via Hartog's extension theorem and the failure of the analog of the Riemann mapping theorem).
- Wolff's proof of the corona theorem.
- Classic theorems are sometimes proved in non-standard ways or derived from stronger, more general versions.
- The presentation of several topics is designed with generalizations to several complex variables, differential geometry, algebraic geometry, and other fields in mind.
- Each chapter ends with a notes section giving context and historical references for the important theorems and proofs.

On the other hand, some common topics are not treated thoroughly in the text or treated only in the exercises. These include Mobius transformations, conformal mappings, special functions, entire functions, and infinite product representations.

I highly recommend this book as a reference for complex analysis in one variable or as a textbook for an advanced graduate course on the subject.

Kyle Hambrook is an Assistant Professor in the Department of Mathematics and Statistics at San Jose State University.