2008/7/3 Pablo Martín Viva <[EMAIL PROTECTED]>:
> Para mi, yo creo que cualquier problema se puede resolver en mayor o menor
> medida con cualquier lenguaje de alto nivel, por ahi las facilidades de un
> lenguaje te hacen que la resolucion sea mas simple o mas complicada, pero
> tarde o temprano el problema lo vas a resolver...

En teoría, cualquier problema de cómputo [0] se puede resolver con
cualquier lenguaje que sea Turing-completo. Java, C*, perl, python y
la mayoría de los lenguajes que conocemos lo son (con la notable
excepción de SQL).

Luego hay problemas que surgen por las construcciones propias del
lenguaje, que te hacen más fácil o más difícil ciertas cosas. En los
lenguajes interpretados, el intérprete/máquina virtual muchas veces te
agrega otras facilidades y limitaciones.

Otros problemas surgen cuando querés hacer algo más que correr tu
lindo algoritmo en datos abstractos, y tenés que interactuar con un
sistema operativo, un usuario, una red, etc. En este aspecto, Java
apesta bastante, lo que es un no-no para programación de sistemas (no
hablo de sistemas contables, está claro). Y la gran mayoría hacen muy
difícil -cuando no imposible- la interacción con el metal desnudo
(manejo explícito de la memoria, assembler embebido o llamadas a
rutinas escritas en assembler, etc), lo que descarta a casi todos
excepto C y assembler para la programación de sistemas operativos,
embebidos, rutinas que aprovechan características de procesadores,
etc.

Todo esto no quita que uno pueda programar un hermoso scheduler en
visual basic, porque la parte algorítmica es totalmente realizable.

[0] Mientras sigamos suponiendo que la hipótesis de Church es cierta.

-- 
Martín Ferrari

_______________________________________________
Lista de correo Programacion.
[email protected]
http://listas.fi.uba.ar/mailman/listinfo/programacion

Responder a