Tengo 3 metas para MUTIS:
1- Actualizar el API interno a Lucene 2.0.
Es quizas lo mas tedioso. Para ello toca hacer chequos manuales y ver que cambio. Pero tengo un programa (AnyNET) que ayuda con parte del trabajo.
2- Crear una capa de compatibilidad para compilar MUTIS sobre Win32, .NET y FreePascal
Este es el punto que mas ha impedido el uso de la libreria para muchos desarrolladores de Delphi. Se necesita .NET y se necesita Delphi 8+ para usarlo.
No es *tan* dificil porque la libreria no depende de otras librerias, tiene la mayoria de la funcionalidad escrita para si misma y es una libreria no visual.
Parte del trabajo esta hecho. Todos los strings estan como unicode (widestring) y ya tengo unas cuantas funciones que pueden sobrevivir al cambio de plataforma. Tengo 2 puntos que impiden fundamentalmente este logro:
a. Threads. La implementacion de hilos esta basada en las clases de .NET. Esto supone una barrera obviamente. Necesito una solucion de threads que sea multiplataforma y estable.
b. Recolector de basura: .NET usa un recolector y no hay casi ningun free en el codigo. Aunque no veo que la situacion sea muy complicada es mas bien de agregar los destructures y crear un objeto base que simplifique la operacion. Yo quiero una solucion similar a la JVCL donde hay un objeto que se auto-recolecta siendo el caso.
Tambien hay clases como el stringbuilder que hay que replicar para otras plataformas, pero mas o menos el 70% del codigo ya es portable.
3. Clustering. Yo quiero, intensamente, lograr lo que hace este buscador:
www.clusty.com
Eso.
Requiere implementar un algoritmo rarisimo llamado LSA (Analisis de semantica latente) o uno similar (los similares tambien son rarisimos).
Con respecto a lo del uniforme y las armas fresco. Tambien el batallon necesita un cocinero