iagoFG.com / Proyectos / iCC | Inicio | Español | English (this page is not available in English)

    iCC es un conjunto de conversor, compilador e interprete que se sitúa en el ámbito de los IDL (lenguajes intermedios de definición de interfaces). Está pensado para formar parte del proyecto Pipe/U y así extender su portabilidad a cualquier plataforma.

    Por un lado permite convertir código, esto es, a partir de una definición en iCC o de un fichero de bytecodes iCC puede devolver código fuente condensado* para cualquier lenguaje reconocido por el sistema. En otras palabras, puede portar el mismo programa a múltiples lenguajes. Normalmente esta funcionalidad está pensada para ser combinada con la interfaz de librería básica de Pipe/U en dicha plataforma (de otra manera muchas funciones no podrán funcionar).

    Además permite compilar, esto es, convertir los programas iCC a un código intermedio de bytecodes iCC que será más legible (y por tanto interpretable más rápidamente) por el resto de funcionalidades de iCC o Pipe/U.

    Por último puede interpretar directamente y ejecutar sobre cualquier plataforma que disponga el interprete (la mayoría de versiones de Pipe/U disponen de un interprete empotrado) una aplicación o servicio compilada en bytecodes iCC (para ejecutar código iCC este será compilado al vuelo a bytecodes antes de iniciar la ejecución).

    El sistema es compatible con compiladores o las capacidades JIT ofrecidas por muchas plataformas utilizando el conversor de código o inyectando directamente bytecodes para conseguir código nativo (no interpretado, sino ejecutado directamente por el procesador). Por ejemplo .NET, Java y TinyCC son ejemplos de sistemas que incorporan compilación JIT.

    Está disponible implementado sobre ICC (que a su vez funciona en múltiples lenguajes como C, PHP, ASP, Java o Actionscript).

* código fuente condensado: iCC dispone de un conversor de código que puede devolver código en múltiples lenguajes conocidos, incluyendo C y ensamblador. Por motivos de eficiencia, rendimiento y tamaño del código, los resultados de este código estarán condensados (no se incluirán comentarios, salvo ocasionalmente un copyright) y las variables se convertirán a identificadores secuenciales de 2, 3 o 4 carácteres válidos.

Licencia

    Todavía no está establecida, ya que el paquete está en fase de desarrollo y es experimental. Esta prevista su distribución dentro del paquete Pipe/U. El iCC está disponible en dos tipos de paquetes: runtime y maker. El paquete runtime permite sólo ejecutar código iCC compilado. El maker permite todas las funciones. También se dispone de un compilador corporativo en línea compartido (similar a una aplicación de SVN o CVS) que puede ser usado por varios usuarios simultaneamente.

Realizado para proyectos en colaboración con...
Volver Arriba | iagoFG.com