Faits: A. Le 26 octobre 1993, la société lausannoise A._ SA, alors active dans le commerce des matières premières agricoles et des produits alimentaires, a versé 939'013,89 dollars étasuniens à B._ AG, à Zurich, également active dans le commerce international. Selon ses déclarations ultérieures, la société lausannoise effectuait alors un placement de liquidités. Afin de garantir le remboursement convenu, une lettre de crédit stand by n° 93-1408 avait été préalablement émise par la banque turque T._ en faveur de A._ SA. La bénéficiaire avait demandé que cet engagement fût confirmé par la banque L._ SA à Genève. Par un télex du 25 octobre 1993 auquel la lettre de crédit était textuellement incorporée, cette seconde banque avait ainsi promis de lui payer un million de dollars, au maximum, contre remise de deux documents qui consisteraient dans un billet à ordre souscrit par B._ AG, d'une part, et dans une déclaration de la bénéficiaire attestant que la somme stipulée dans ce billet n'avait pas été acquittée, d'autre part. Cet engagement était soumis aux "règles et usances en matière de crédit documentaire 1983" publiées par la Chambre de commerce internationale à Paris (publication CCI n° 400, 1984); il était valable jusqu'au 25 avril 1994. A cette date, A._ SA a réclamé le paiement et a produit les documents. L._ SA lui a versé 998'950 dollars le 3 mai 1994, soit un million de dollars moins une commission et des frais par 1'050 dollars. Sur ordre de l'autorité compétente en Turquie, la banque turque avait alors cessé toute activité et suspendu ses paiements; B._ AG disait tout ignorer du billet à ordre et de son éventuel engagement dans l'opération concernée. Une enquête pénale est en cours depuis le 31 janvier 1995, sur plainte de A._ SA. B. Le 22 mai 1995, L._ SA a ouvert action contre A._ SA devant le Tribunal cantonal du canton de Vaud. Sa demande tendait au paiement d'un million de dollars avec intérêts à 8% par an dès le 2 mai 1994. La demanderesse soutenait qu'elle avait payé par erreur une somme qu'elle ne devait pas et dont elle demandait le remboursement sur la base de l'art. 63 al. 1 CO. Selon ses allégations, le billet à ordre que la défenderesse lui avait remis était un faux, pourvu d'une signature contrefaite de l'administrateur de B._ AG. En outre, la défenderesse lui avait mensongèrement indiqué que sa garantie porterait sur une opération commerciale, concernant une livraison d'huile végétale, alors qu'il s'agissait en réalité d'une opération financière. Elle avait également dissimulé que la banque turque et B._ AG étaient liées au sein d'un groupe de sociétés. Enfin, en avril 1994, la défenderesse avait obtenu le paiement de façon frauduleuse, en taisant que B._ AG contestait toute obligation et que l'opération était contraire aux règles et principes à observer par la banque turque. La défenderesse a conclu au rejet de la demande. Statuant par un jugement du 15 janvier 2003, la Cour civile du Tribunal cantonal l'a condamnée à rembourser à la demanderesse 998'950 dollars avec intérêts à 5% par an dès le 3 mai 1994. Elle a retenu que le billet à ordre était un faux et que, par ailleurs, la défenderesse avait réclamé le paiement de façon frauduleuse. C. Agissant par la voie du recours en réforme, la défenderesse requiert le Tribunal fédéral de modifier le jugement en ce sens que la demande soit entièrement rejetée. La demanderesse conclut au rejet du recours, dans la mesure où celui-ci est recevable. L'instruction de la cause est demeurée suspendue jusqu'à droit connu sur un recours en nullité que la défenderesse a également introduit contre le jugement de la Cour civile. La Chambre des recours du Tribunal cantonal a rejeté ce recours par arrêt du 26 août 2004.