Está muy bien eso de la programación multicore, que antes se dejaba a grandes centros de computación y ahora resulta que las pcs vienen con esa teconología que hay que saber aprovechar.
A repensar todos los algoritmos que creíamos conocer!!
De Java me incomoda el manejo de strings, que copia continuamente, y no me deja cambiar uno o dos bytes de la cadena, como es tan fácil y rápido en C++.
En Java cada cadena nueva ocupa nueva memoria, y después va quedando basura que la maquina virtual va administrando.
Pero si uno quiere trabajar asiduamente con cadenas, como por ejemplo expresiones lógicas o cálculo simbólico, o cosas por el estilo, el resultado será deficiente en tiempo de ejecución.
Pero también es cierto que apenas si sé los rudimentos de Java y no sé si hay paquetes u opciones que mejoren esto.
Python me han dicho que es más lento que Java, y que los strings los maneja con igual criterio.
Yo no pido que me permitan escribir directamente en memoria como en C++, pero por lo menos que el manejo de strings sea eficiente. Si voy a cambiar un solo byte de una cadena larga, no tiene sentido copiarla toda, después de todo el interprete Java puede hacer de las suyas sin que el programador intervenga, salvo tan solo enviandole un ''mensaje'' al objeto string para hacerlo mutar, como todo objeto que se precie.N
No entiendo por qué esto debe ser ineficiente.
Así no voy a poder resolver el P=NP y llevarme el millón de claymath.