Faits: Faits: A. A.a En août 1995, B._, associé gérant et propriétaire économique de X._ Sàrl (ci-après: X._ ou la demanderesse), a fondé avec A._, C._, D._ et E._, la société Y._ AG (ci-après: Y._), à W._; les quatre dernières personnes précitées ont été nommées administrateurs de Y._, avec signature collective à deux (art. 64 al. 2 OJ). Y._ a été créée dans le but unique d'exploiter, en Suisse allemande et au Tessin, les publications éditées en langue française par X._, cela sous le nouveau titre "Z._". Le 18 août 1995, B._, A._, C._ et E._ ont signé une "déclaration d'intention", dont les clauses suivantes sont extraites: "La convention d'affermage est acceptée par tout le monde (...). (...) Les actionnaires sont d'accord de reprendre les actions à M. B._ ou ses nommables, dans les deux ans qui suivent, soit: 50 % jusqu'à fin 1996 et 50 % jusqu'à fin 1997. A fin 1997, les actions que détiendra B._ ou ses nommables correspondront à 20 % du capital-actions et du droit de vote; à parts égales avec les autres actionnaires. (...) Après la fondation de la nouvelle société [Y._], la convention d'affermage et la convention des actionnaires seront signées dans les plus brefs délais". Toujours le 18 août 1995, X._, représentée par B._, et Y._, agissant par A._, D._, C._ et E._, ont signé une convention dite "d'affermage" réglant les modalités de leur collaboration. Elle précisait que B._ "donnait son copyright à Y._", en contrepartie du versement par celle-ci à X._ d'un pourcentage variable sur le chiffre d'affaires annuel minimum net que s'engageait à réaliser Y._ au moyen de la publication de l'édition "Z._" (art. 64 al. 2 OJ). Il a été retenu que l'existence de la convention "d'affermage" précitée était vitale pour la survie de la société Y._. Pour éviter toute concurrence entre X._ et Y._, les limites territoriales de leur activité respective ont été fixées par un avenant du 28 novembre 1995, prévoyant des exceptions éventuelles. Le 22 août 1995, B._, D._, C._, E._ et A._ ont passé une "convention des actionnaires" stipulant notamment ce qui suit: "Les autres actionnaires s'engagent à reprendre les actions de M. B._ ou de ses nommables dans les deux ans qui suivent, soit: 50 % jusqu'à fin 1996 et 50 % jusqu'à fin 1997 et ceci à leur valeur réelle, mais au minimum à leur valeur nominale. A fin 1997, les actions que détiendra B._ ou ses nommables correspondront à 20 % du capital-actions et du droit de vote; à parts égales avec les autres actionnaires". A._ a signé cette convention dans la perspective de l'essor de la future société Y._. Le 23 août 1995, l'actionnariat de Y._ était constitué de la manière suivante: B._ était titulaire de 80 actions nominatives de 1'000 fr. chacune représentant le 80 % du capital-actions; A._, C._, D._ et E._ étaient titulaires chacun de 5 % du capital social sous la forme de 50 actions nominatives d'une valeur nominale de 100 fr. Le 4 décembre 1996, B._ a cédé ses actions à X._. A.b Après quelques mois d'activité, Y._ a périclité, en raison notamment d'un préjudice de 40'000 fr. environ causé par son administrateur C._, lequel a été contraint de remettre ses actions à titre fiduciaire à la société, avant d'être radié du registre des actionnaires. Le 18 février 1997, X._ s'est adressée notamment à A._ pour obtenir l'exécution de la "convention des actionnaires" et a invité cette dernière à reprendre 11 actions nominatives de 1'000 fr. et à verser le montant de 11'000 fr. A._ n'a pas donné suite à la requête. Par lettre du 27 novembre 1997, X._ a retiré à Y._ les droits d'exploitation de ses publications et demandé la "rupture" du contrat d'affermage du 18 août 1995 pour le 31 mai 1998. Y._ a signé cette écriture "Pour accord" par l'entremise de A._. Il résulte de la lettre susmentionnée que X._ avait l'intention de continuer l'exploitation de "Z._" par l'intermédiaire d'une nouvelle société, tout en se réservant d'établir une nouvelle convention avec Y._ si cette dernière proposait "d'autres possibilités" pour la poursuite de l'exploitation de "Z._". Au moment de la résiliation de la convention d'affermage, Y._ n'avait pas réalisé le chiffre d'affaires minimum qui y était prévu et n'avait pas payé la contrepartie financière due à la demanderesse pour les années 1996 et 1997. Mise en liquidation le 4 mai 1998, Y._ a été radiée du registre du commerce le 13 mars 2000. Mise en liquidation le 4 mai 1998, Y._ a été radiée du registre du commerce le 13 mars 2000. B. Le 11 septembre 1998, X._ a mis en demeure A._ de lui racheter 20 actions nominatives de Y._ au prix de 20'000 fr., en application de la clause susmentionnée de la convention des actionnaires du 22 août 1995. Devant la carence de A._, B._ lui a fait notifier un commandement de payer pour cette somme et à ce titre, auquel la poursuivie a fait opposition totale. Le 23 décembre 1998, X._ a actionné A._ devant la Cour civile du Tribunal cantonal vaudois en paiement de 20'000 fr. avec intérêts à 5 % l'an dès le 1er janvier 1998. La demanderesse a allégué tenir à la disposition de la défenderesse 20 actions nominatives de Y._ contre paiement de ce prix. Par jugement du 18 mars 2002, dont les considérants ont été notifiés le 30 août 2002, la Cour civile a entièrement débouté la demanderesse. Elle a considéré en substance qu'il y avait identité entre B._ et la demanderesse, au point que les actes auxquels le premier était partie personnellement engageaient également la seconde. Le fait que la déclaration d'intention du 18 août 1995 mentionnait expressément que la convention "d'affermage" et la "convention des actionnaires" seraient signées à bref délai démontraient que ces deux conventions étaient étroitement liées. La cour cantonale en déduit que la défenderesse s'était ainsi engagée à acheter les actions de B._ ou de ses nommables aux conditions implicites, d'une part, que la convention d'affermage soit encore en vigueur au moment du transfert des actions et du paiement du prix de vente et, d'autre part, que la société Y._ soit viable. L'engagement d'acquérir les actions de Y._ devait être qualifié de contrat de vente à terme. Comme la convention d'affermage a été résiliée par accord entre Y._ et la demanderesse, à l'initiative de cette dernière, la Cour civile a jugé que la "convention des actionnaires" était devenue inexécutable, car une des conditions d'application de la vente à terme faisait défaut lors de l'envoi de la mise en demeure du 11 septembre 1998. Par jugement du 18 mars 2002, dont les considérants ont été notifiés le 30 août 2002, la Cour civile a entièrement débouté la demanderesse. Elle a considéré en substance qu'il y avait identité entre B._ et la demanderesse, au point que les actes auxquels le premier était partie personnellement engageaient également la seconde. Le fait que la déclaration d'intention du 18 août 1995 mentionnait expressément que la convention "d'affermage" et la "convention des actionnaires" seraient signées à bref délai démontraient que ces deux conventions étaient étroitement liées. La cour cantonale en déduit que la défenderesse s'était ainsi engagée à acheter les actions de B._ ou de ses nommables aux conditions implicites, d'une part, que la convention d'affermage soit encore en vigueur au moment du transfert des actions et du paiement du prix de vente et, d'autre part, que la société Y._ soit viable. L'engagement d'acquérir les actions de Y._ devait être qualifié de contrat de vente à terme. Comme la convention d'affermage a été résiliée par accord entre Y._ et la demanderesse, à l'initiative de cette dernière, la Cour civile a jugé que la "convention des actionnaires" était devenue inexécutable, car une des conditions d'application de la vente à terme faisait défaut lors de l'envoi de la mise en demeure du 11 septembre 1998. C. La demanderesse exerce un recours en réforme au Tribunal fédéral contre le jugement précité Principalement, elle reprend ses conclusions d'instance cantonale; subsidiairement, elle requiert l'annulation de la décision attaquée, la cause étant renvoyée à la cour cantonale pour nouveau jugement dans le sens des considérants. L'intimée propose le rejet du recours. Par arrêt du 22 octobre 2003, la Chambre des recours du Tribunal cantonal vaudois a rejeté le recours cantonal en nullité déposé par la demanderesse contre le jugement de la Cour civile.