Let g be a principal modulus with rational Fourier coefficients for a discrete subgroup of SL2(R) lying in between Gamma(N) and Gamma(0)(N)(dagger) for a positive integer N. Let K be an imaginary quadratic field. We introduce a relatively simple proof, without using Shimura's canonical model, of the fact that the singular value of g generates the ray class field modulo N or the ring class field of the order of conductor N over K. Further, we construct a primitive generator of the ray class field K-c of arbitrary modulus c over K from Hasse's two generators. (C) 2012 Elsevier Inc. All rights reserved.