Esto es lo que yo quería: Debate. Es que me parecía a mi que esto iba a derivar en que cada uno diera una lista de características, y eso no me mola. Si en realidad a mi me entanta la idea de crear lenguajes nuevos. Incluso yo también he creado alguno.
Cita:
Empezado por mamcx
Cita:
Empezado por Ñuño Martínez
¿Y la multitarea? Bueno, los objetos son, por definición, multitarea. Otra cosa es que casi ningún compilador/entorno los implemente así. Objective C es un buen ejemplo. Small Talk es otro. Oberon otro más...
|
De donde sacas esto?
|
De la propia definición de objeto. Se supone que un objeto es una entidad completamente independiente, en la que los datos y el código que los manejan están íntimamente relacionados y separados del entorno. La comunicación entre objetos se realiza (por definición) mediante mensajes y estos (por definición)
no revelan los detalles de su implementación, de hecho
no tienen por qué ser respondidos de forma síncrona. En un lenguaje que cumpla a rajatabla esta definición (y muy pocos lo hacen; yo sólo conozco Small Talk y Objective C, y dependiendo de qué compilador/intérprete se use) la multitarea sería algo natural y no precisaría procedimientos u objetos especiales para implementarla. Más bien al contrario, necesitaría algún mecanismo para asegurarse de que una secuencia de mensajes no se respondieran de forma concurrente.
Si habéis programado para algún entorno de ventanas a bajo nivel (por ejemplo, Windows 3.1 o XWindow), sabréis que están diseñados mediante objetos y que la comunicación entre componentes se hace a través de mensajes y que
pocas veces estos mensajes se responden en el momento de enviarlos. Los entornos de ventanas son de las pocas aplicaciones realmente orientadas a objetos que he visto.
Pues eso, a mi me gustaría un lenguaje que funcionara de esa forma.
Cita:
Empezado por mamcx
Si uno solo sabe pascal y no sabe nada mas, es muy dificil darse cuenta todo el trabajo idiota que se esta uno cargando. Y eso aplica a todo.
(...)
Piensen como usuarios. No es la idea "bueno ya que con C se puede hacer de todo, porque no usar C y ya?", sino "como seria un lenguaje que no este amarrado por el status quo? como podria hacerse aun mejor?".
|
Completamente de acuerdo.
Cita:
Empezado por mamcx
(...)Python es sobrado en claridad de código. (...)
|
Discrepo, y mucho. Personalmente me cuesta horrores hacerme una idea de cómo funcionan los programas Python. Lo he intentado. He leído tutoriales, manuales de introducción, cursos... Pero no me entra. En serio, en cuanto se meten en algo más complicado que obtener un dato y darle salida, me parece incluso más caótico que un mal programa escrito en PHP.
Además, tanto FORTRAN como COBOL desecharon la indentación significativa
hace décadas porque dificultaba tanto la escritura como la lectura de programas. Me parece absurdo que un lenguaje que se considera
moderno mantenga una característica tan obsoleta, útil sólo cuando se trabajaba con tarjetas perforadas.
Cita:
Empezado por mamcx
(...) implementar OO en C (...)
|
Esto me recuerda que tengo pendiente explicar cómo programar OO en C puro y duro*, con herencia y polimorfismo, y sin necesidad de hacer cosas raras (como el horrendo
MFC y similares).
Cita:
Empezado por mamcx
(...) y que los mas populares sean un gran ejemplo de como NO hacer las cosas (c, c++, php) que requieren tener experiencia para pelear en contra de lo que los lenguajes/librerias estimulan.
|
Mira, si al final no estamos tan en desacuerdo. Aunque C es mi lenguaje favorito para programación en bajo nivel, tanto C++ como sus derivados (C#, PHP**, D, JavaScript...) me parecen auténticas aberraciones. Los dolores de cabeza que me han producido tanto C++ como JavaScript son de antología.
A modo de
conclusión diría que me gustaría un lenguaje realmente orientado a objetos, no a clases ni prototipos. También abogo por los lenguajes de propósito específico, y no tanto por los de propósito general.
______________________________________
* Tentado estoy de hacerlo en la sintaxis de K&R, pero creo que al final lo haría en C99 o similar.
** Ojo, a partir de PHP2, cuando autor original lo dejó en manos de unos tipejos emperrados en hacer que se pareciera a C, primero, y C++, después. Por lo que he visto, el PHP
original no era tan mala idea.