¿Qué
idiomas interpretados
idiomas sin puntero (IE: Python, Java, Perl, PHP, Ruby, Javascript, etc.) tienen la gestión de memoria manual? No recuerdo haber oído hablar de uno.Idiomas interpretados con gestión de memoria manual?
¿No es la mayor preocupación sobre los lenguajes interpretados los retrasos no deterministas (o la complejidad del espacio cuando no hay suficiente demora) de la recolección de basura? Entonces, ¿por qué no simplemente escribir algo exactamente como Java, pero te obliga a liberar memoria manualmente?
EDITAR
Lo que quiero decir con la gestión de memoria manual es que el lenguaje tendría referencias a objetos, y se puede eliminar el objeto utilizando una referencia.
Ejemplo:
Object a = new Object(); // a is a reference to the object
Object b = a; // b is a reference to the same object
a.method(); // fine
delete b; // delete the object referenced by b
a.method(); // null dereference exception
Entonces, ¿qué advertencias (distintas de las pérdidas de memoria) podría haber en un lenguaje como este ejemplo?
por cierto, ¿qué quiere decir con "interpretado" aquí? java es tan "interpretado" como Python, PHP o Javascript en estos días de bytecode. ¿Tal vez sería más preciso mencionar los lenguajes "tipados dinámicamente"? – jsbueno
Cualquier cosa ejecutada por un intérprete, ya sea una especie de forma intermedia o bytecode simple. Particularmente cualquier cosa como php/java/perl/python/ruby que no te dejará basura en tu espacio de direcciones. –
C# no es puntero. –