El propositivo del mismo es documentar, el resultado de varias discusiones y criticas.
Al hacer publico este texto, estoy invitando a cual lector a dar su opinion al respecto, incluso
a reservarsela si lo considera conveniente; a discutir, inclusive a destruir mi opnion si se hace
criticamente.
He notado que todo lo que escribo, no alcanza a satisfacerme, en especial como programador.
Que puede ser mejorado, en otras palabras visto desde diferentes siempre se puede optimizar en algun
punto, ya sea en reducir lineas de codigo, en el espacio y tiempo de acceso que utilizen los datos
que intervengan, solo por nombrar algo. Esto me lleva a buscar otras formas de aproximacion
a la hora de realizar un mismo procedimiento, en la medida que mi razon me lo permite, aunque
siempre me he decantado por la solucion equilibrada entre simple y uso de recursos, considerando
que si alguien que no entiende de programacion puede entender la solucion, entonces es simple.
Esto me ha llevado a pensar una forma de trabajar con los procesos en los lenguajes divlike.
El hecho de considerar a un proceso como un ente, el cual reacciona dependiendo del entorno
que lo rodea (principalmente otros procesos, graficos, etc), el ambiente externo "de su ecosistema"
(lease Sistema operativo, interaccion con el usuario), me ha llevado a idear una forma de ver
estas relaciones, mediante la colocacion de interfaces. Llendo a un ejemplo mas concreto,
un proceso que avanza moviendose horizontalmente por un plano, (si le afecta o no la gravedad, no
cambiaria el ejemplo, porque siempre en ningun momento se ve afectado por movimientos verticales)
generalmente, el codigo que decide en que direccion y cuanto se mueve, esta fuertemente ligado al
proceso (lease esta codificado dentro del mismo proceso), en otras palabras ese mismo proceso no
podria usarse tanto para interctuar con IA como con un usuario, es decir se tienen que programar
dos procesos distintos uno para ser controlado por la IA y otro para se controlado por el o los usuarios.
Al aplicarle una interface a dicho proceso, se desacopla dicho proceso. por lo tanto se programara solo
la interfaz particular para cada caso (usuario/s, IA, etc), dejando al proceso dependiente de dicha
interfaz. Aqui el problema de la comunicacion de dicha interfaz con el proceso, lo cual puede solucionarse
de multiples maneras, por ejemplo mediante la utilizacion de datos globales, punteros a estructuras de datos,
datos en los procesos, combinaciones de estos. Aplicando esto, se puede dejar un proceso generico capaz
de ser reutilizado. En el ejemplo anterior, el proceso se moveria una cantidad, tiempo y sentido determinados,
inducidos por la interfaz, independientemente en el sentido en que sea o si esa cantidad se ha sido
producida por IA o por ordenes del usuario. Claro que teniendo en cuesta el gasto de recursos por parte
de esa interfaz, se obtiene algo mas generico y reutilizable. Siendo sincero, no he probado esto a gran escala
Aunque apostaria a que aun en ese contexto puede ser usado.
Con todo esto no trato de obligar al lector a usar mi vision, sino a darle una alternativa mas, un punto de
vista, que espero, sea diferente al suyo. Claro que lo invito a probar esta idealizacion y si es posible a
tomar y/o descartar lo que crea necesaria de la misma.

Esta obra está licenciada bajo una Licencia Creative Commons Atribución 3.0 Unported.