Examen de Lenguajes de Programación. Febrero 2004

Anuncio
Examen de Lenguajes de Programación. Febrero 2004
1. a) ¿ Qué son las propiedades y métodos de clase ? ¿ Cual es
su aplicación fundamental ? Ejemplo/s en Java.
b) ¿ Qué es la evaluación retardada (lazy evaluation) ?
Ejemplo en Haskell.
c) Explica el modelo de control de errores en Java con
ejemplos. Tipos de excepciones en Java.
2. Dado el siguiente código en Java
class A { public void a(){...}}
abstract class F { public abstract void a();}
class B extends A implements X{ public void b(){...}}
class C extends F implements X{ public void c(){...}}
interface X {public void a();}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
B b = new B();
C c = new C();
A a = b;
a.a();
a.b();
F f = c;
f = b;
X x = b;
x = c;
x = a;
B w = a;
w.b();
Object [] lista = new Object[10];
lista[0] = b;
c = (C)lista[0];
c.c();
a) Señala los errores en tiempo de compilación. Di como
solucionar estos errores. Señala los errores en tiempo de
ejecución. Di como solucionarlos.
b) Señala donde hay asignaciones polimórficas y donde hay
ligadura dinámica.
c) Implementa la función filter con JDK 1.4 y JDK1.5.
3.
Dado el siguiente código en Haskell:
xsort([], sortedlist) = sortedlist
xsort ((front:rest), sortedlist)
= xsort(rest, insert(front, sortedlist))
isort(anylist) = xsort (anylist, [])
insert (item, []) = [item]
insert (item, (front :rest))
= if item <front
then item: (front:rest)
else front : insert (item, rest)
a)
b)
c)
Muestra un ejemplo de utilización de la función
xsort e incluye su definición de parámetros. xsort::
a -> ... y las definiciones de isort e insert.
Modifica la función xsort y su definición para que
permita otro tipos tipos de ordenación
(descendente, ascendente)
Aplica parametrización parcial, politipos y
funciones de alto nivel al apartado b.
4. Explica qué pasa al invocar ?-p(X) con estas reglas. Explicar
Unificación y backtracking sobre este ejemplo siguiendo parte
de su traza.
p(a).
p(X) :- q(X), r(X).
p(X) :- u(X).
q(X) :- s(X).
r(a).
r(b).
s(a).
s(b).
s(c).
u(d).
Puntuación: 1. 2.5 2. 2.5 3. 2.5 4. 2.5
Tiempo: 4 horas
Entrevistas + Revisión de Examen: Ver sitio Web.
Descargar