20.06.2013 Views

Acceso al documento en PDF - Biblioteca Nacional de Maestros

Acceso al documento en PDF - Biblioteca Nacional de Maestros

Acceso al documento en PDF - Biblioteca Nacional de Maestros

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

composición <strong>de</strong> varias funciones, por lo tanto, <strong>de</strong> los nodos <strong>de</strong> este tipo, <strong>de</strong>finidos <strong>en</strong> la clase TWhile, se<br />

podrá acce<strong>de</strong>r a dos listas <strong>de</strong> composición.<br />

F<br />

<strong>Acceso</strong> a lista<br />

<strong>de</strong><br />

composición<br />

<strong>de</strong> formas<br />

funcion<strong>al</strong>es<br />

<strong>de</strong> la<br />

condición <strong>de</strong>l<br />

while<br />

<strong>Acceso</strong> a lista <strong>de</strong><br />

composición <strong>de</strong> formas<br />

funcion<strong>al</strong>es <strong>de</strong> la parte que<br />

s se repite<br />

17 Información <strong>al</strong>mac<strong>en</strong>ada para la forma funcion<strong>al</strong> wh<br />

La forma funcion<strong>al</strong> constructor es una expresión <strong>en</strong> don<strong>de</strong> aparece una secu<strong>en</strong>cia’ <strong>de</strong><br />

subexpresiones don<strong>de</strong> cada una <strong>de</strong> ellas pue<strong>de</strong> a su vez involucrar la composición <strong>de</strong> varias funciones.<br />

De aquí la necesidad <strong>de</strong> mant<strong>en</strong>er una lista don<strong>de</strong> cada uno <strong>de</strong> sus nodos es la cabeza <strong>de</strong> una lista <strong>de</strong><br />

composición. Para esto se <strong>de</strong>finió la clase TConsfruccion, una clase <strong>de</strong>rivada <strong>de</strong> Lista, y a su vez Lista<br />

se <strong>de</strong>finió como una clase <strong>de</strong>rivada <strong>de</strong> Nodo.<br />

<strong>de</strong> listas <strong>de</strong><br />

composición <strong>de</strong> formas<br />

funcion<strong>al</strong>es <strong>de</strong>l constructor<br />

Fig. 18 Información <strong>al</strong>mac<strong>en</strong>ada para la forma funcion<strong>al</strong> construcción.<br />

Por Último nos queda la forma funcion<strong>al</strong> bu para la cu<strong>al</strong> se manti<strong>en</strong>e por un lado el acceso a una<br />

lista <strong>de</strong> composición correspondi<strong>en</strong>te a la expresión funcion<strong>al</strong> parámetro <strong>de</strong>l bu y por otro lado un<br />

Puntero <strong>al</strong> objeto parámetro <strong>de</strong> esta expresión. Este objeto, <strong>al</strong> igu<strong>al</strong> que <strong>en</strong> el caso <strong>de</strong> la forma funcion<strong>al</strong><br />

const pue<strong>de</strong> ser un v<strong>al</strong>or <strong>en</strong>tero, un string, un v<strong>al</strong>or booleano o una secu<strong>en</strong>cia.<br />

2.2.2. El Ejecutor<br />

<strong>Acceso</strong> a lista <strong>de</strong><br />

o b j e t o<br />

19 Información <strong>al</strong>mac<strong>en</strong>ada para la forma funcion<strong>al</strong><br />

Una vez fin<strong>al</strong>izada la etapa <strong>de</strong> <strong>de</strong>sarrollo correspondi<strong>en</strong>te a la g<strong>en</strong>eración ‘<strong>de</strong> código intermedio se<br />

Pasó a la construcción <strong>de</strong>l programa ejecutor o intérprete <strong>de</strong>l tipo <strong>de</strong> repres<strong>en</strong>taciones intermedias<br />

expuesto <strong>en</strong> el punto anterior. Conjuntam<strong>en</strong>te,, <strong>en</strong> esta etapa, se construyó la interfaz a<strong>de</strong>cuada para. el<br />

ingreso <strong>de</strong> los datos <strong>de</strong> <strong>en</strong>trada a un programa FP que ya se ‘<strong>en</strong>cu<strong>en</strong>tre traducido a Ia repres<strong>en</strong>taron<br />

intermedia. Dichos datos también son an<strong>al</strong>izados sintácticam<strong>en</strong>te para ver si pert<strong>en</strong>ec<strong>en</strong> <strong>al</strong> conjunto <strong>de</strong><br />

objetos válidos <strong>en</strong> nuestro l<strong>en</strong>guaje. En caso <strong>de</strong> no serlo se le informa <strong>al</strong> usuario por medio <strong>de</strong> un<br />

m<strong>en</strong>saje.<br />

Dado que ya se t<strong>en</strong>ía <strong>de</strong>finidas las clases Lista, TEntero, TBoolean y TString que permit<strong>en</strong> la<br />

construcción <strong>de</strong> listas heterogéneas, solam<strong>en</strong>te se agregó una nueva clase- hija <strong>de</strong> Nodo,’ la Clase<br />

TBottom para soportar el v<strong>al</strong>or in<strong>de</strong>terminado Bottom.<br />

Supongamos, por ejemplo, que el usuario ingresó los sigui<strong>en</strong>tes datos <strong>de</strong> <strong>en</strong>trada <strong>al</strong> programa <strong>de</strong>l<br />

ejemplo dado <strong>en</strong> la figura 5:<br />

238

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!