Discusión:Simula

Contenido de la página no disponible en otros idiomas.
De Wikipedia, la enciclopedia libre
Esta página le interesa al Wikiproyecto Informática.

¿Simula es o no el primer lenguaje POO ?[editar]

Pensaba que Smalltalk era el primer lenguaje OOP. De hecho en el artículo sobre Smalltalk afirman eso mismo, así que uno de los dos está equivocado.

"De hecho Simula(1964) apareció antes que Smalltalk(1969), luego el primero debe ser Simula.
Ambos se equivocan Lisp es Orientado a objetos y fue creado en 1958 mucho antes de Simula y Smalltalk pudes verificar lo que digo aquí
Lisp NO ES OOP, es funcional. Aunque hay varios dialectos que manejan el concepto de mandar mensajes de la OO como xlisp y en el famoso libro del hechicero que explica cómo implementar OOP en Scheme.
Alan Key dijo:
- I didn't like the way Simula I or Simula 67 did inheritance (though I thought Nygaard and Dahl were just tremendous thinkers and designers). So I decided to leave out inheritance as a built-in feature until I understood it better.
My original experiments with this architecture were done using a model I adapted from van Wijngaarten's and Wirth's "Generalization of Algol" and Wirth's Euler. Both of these were rather LISP-like but with a more conventional readable syntax. I didn't understand the monster LISP idea of tangible metalanguage then, but got kind of close with ideas about extensible languages draw from various sources, including Irons' IMP.


Simula NO es un lenguaje OO[editar]

No se confundan, Simula nació como lenguaje de simulación, no como lenguaje para la POO. En ese momento no existía el concepto de POO. La noción de clase era otra, de hecho la noción de clase que se maneja en los lenguajes OO nada tiene que ver con el concepto de clase en matemáticas. Los registros o estructuras ya existían en COBOL (también las uniones). Aunque su sintaxis horriblemente verbosa ahuyentó a la mayoría de los programadores con formación de matemáticos o ingenieros. Fortran IV ya permitía encapsular y tenía una manera de sobrecargar funciones mediante distintos puntos de entrada con la palabra clave ENTRY, que desapareció en alguna versión posterior. Como pueden ver ya había elementos para poder implementar OO, pero no así el paradigma de programación. Lo que se hacía Simula, era como su nombre lo dice, simulaciones, porque para eso se dieñó, que después Alan Key se inspirara en Simula para su lenguaje OO Smalltalk, es otro cantar.

Por eso creo que este artículo se debe reescribir describiendo el lenguaje Simula en su contexto, la simulación de sistemas. No como lenguaje OO.

Es un hecho que en muchas partes ponen a Simula como el primer lenguaje OO, pero insisto en que no lo es. Sin embargo ahora hay mucha gente que todavía cree que la POO es el paradigma de programación más avanzado y completo del mundo, y creen que le hacen mucho favor a Simula clasificándolo como el primer lenguaje OO. Eso es falso por lo que expliqué arriba. Los autores de Simula sí tenían claro formalmente lo que necesitaban para las simulaciones.

La POO hace un uso exacerbado de un modelo de objetos intercambiando mensajes para resolver cualquier problema. Esa es una manera muy enredada de razonar. Muchos problemas se resuelven sin tanta complicación. Por eso Dijkstra dijo, lo mismo que había dicho sobre COBOL, que la POO echa a perder el cerebro. Lo dijo porque esos lenguajes obligan a pensar en un montón de cosas ajenas al problema complicando la búsqueda de la solución. (Alan Key no lo entendió así y lo tomó como ataque personal y se expresó muy mal de Dijstra tildándolo de arrogante, algo con lo que no estoy de acuerdo.)

Por eso no se le hace ningún favor a Simula clasificándolo como OO.

EEE.

Enlaces externos modificados[editar]

Hola,

Acabo de modificar 1 enlaces externos en Simula. Por favor tomaos un momento para revisar mi edición. Si tenéis alguna pregunta o necesitáis que el bot ignore los enlaces o toda la página en su conjunto, por favor visitad esta simple guía para ver información adicional. He realizado los siguientes cambios:

Por favor acudid a la guía anteriormente enlazada para más información sobre cómo corregir los errores que el bot pueda cometer.

Saludos.—InternetArchiveBot (Reportar un error) 04:55 16 ene 2020 (UTC)[responder]