Guile es una biblioteca diseñada para ayudar a los programadores crear aplicaciones flexibles. Utilizando Guile en una aplicación permite a los programadores escribir plug-ins o módulos (hay muchos nombres, pero el concepto es esencialmente el mismo) y usuarios de utilizarlos para tener una aplicación se ajuste a sus necesidades.
Hay una larga lista de aplicaciones probadas que emplean lenguajes de extensión. Ejemplos exitosos y de larga vida en el mundo del software libre son GNU Emacs y GIMP.
Ejemplos muy populares de la ampliación de las aplicaciones de servidor son el Apache proyecta Perl y los módulos de PHP.
lenguajes de extensión permiten a los usuarios, programadores y desarrolladores de terceros para agregar características a un programa sin tener que volver a escribir el programa en su conjunto, y que permite a las personas que se extiende un programa de cooperar unos con otros, sin tener que gastar cualquier esfuerzo extra.
Guile es un intérprete para el lenguaje de programación Scheme, empaquetado como una biblioteca que se puede incorporar en sus programas. Sus usuarios tienen acceso completo al intérprete, por lo que en sí Guile se pueden ampliar, con base en las necesidades del usuario. El resultado será un lenguaje de programación a la medida de su aplicación.
Usando Guile con su programa hace que sea más fácil de usar. Los usuarios no necesitan aprender las cañerías de su solicitud para personalizarlo; sólo hay que entender Guile, y el acceso que nos ha facilitado. Ellos pueden negociar fácilmente y comparten características con la descarga y la creación de secuencias de comandos, en lugar de la negociación parches complejos y volver a compilar sus aplicaciones. Ellos no tienen que coordinar con usted, o cualquier otra persona
¿Cuál es nuevo en esta versión:.
- Esta versión añade SRFI-105 expresiones rizado infijos, las opciones del lector por puerto, futuros anidados, setters récord funcionales, un puerto ante organismos HTTP, más optimizaciones, mejor trayectoria de carga y manejo trayectoria de carga compilado, y la larga lista habitual de correcciones de errores.
¿Qué hay de nuevo en la versión 1.8.8:.
- Comunicado de Mantenimiento para la serie estable 1.8
¿Qué hay de nuevo en la versión 1.9.9:
- unión con los líquidos más rápido dinámico
- `fluido-ref 'y` fluido-set' ahora se han dedicado instrucciones de código de bytes.
- Enlace dinámico a través de `con fluidos 'o` con-fluidos *' ya no provoca
- invocaciones recursivas VM, ni la asignación de cierre del cuerpo. Sin usar
- Números de fluidos son ahora de basura recolectada.
- cambios Incompatible Tree-IL:
- Hubo una serie de cambios incompatibles hechas en el último ciclo
- respecto Tree-IL, lenguaje intermedio alto nivel de Guile. Consulte
- registros de cambios de detalles. Si estos se ven afectados, claramente lo que necesita li>
- enviar sus parches compilador aguas arriba!
- Mensajes del sistema: delimitados, continuaciones componibles:
- Guile ahora tiene indicaciones como parte de su lenguaje primitivo. Ver & quot; Avisos & quot;. En el manual, para obtener más información
- Expresiones entraron en el REPL, o desde la línea de comandos, están rodeados de un símbolo con la etiqueta indicador predeterminado.
- Deprecated: `perezoso captura secundaria" era una forma que capturó la pila en el punto de un 'tiro', pero el estado dinámico en el punto de la 'captura'. Fue un poco
- loco. Por favor cambia usar `captura ', posiblemente con un saque manejador, or`with-tirar-handler".
- 'captura', 'tiro', `con-tirar-handler" implementado en el esquema
- Esto no tiene ningún impacto para el usuario final, pero estamos muy orgullosos de poder implementar estas construcciones en términos de instrucciones y líquidos, aunque no es el cambio de la API de usuario, que tenemos que hablar en las noticias . Gracias por leer!
- seguimiento actual del módulo en el expansor sintaxis:
- La ampliación de un empezar "expresión que cambió el módulo actual a través an`eval-cuando '' no estaba funcionando, debido a un error. Esto fue corregido.
- trazas en el REPL no mostrar marcos REPL
- La serie 1.9 ha tenido trazas excesivamente prolijos, que mostraron marcos internos para la aplicación de la REPL. Esto se ha corregido en su mayoría.
- Por favor, informar de los errores de bug-guile@gnu.org.
- Las adiciones a la interfaz de la función extranjera (FFI)
- El `(sistema extranjero) 'módulo proporciona ahora tipos extranjeros adicionales correspondientes a` int de C', 'larga', `size_t ', etc.
- Además, el procedimiento 'de vínculos dinámicos "puede ahora ser llamado sin ningún argumento, en cuyo caso se devuelve un & quot;. Símbolo mango & quot mundial ;, permitiendo símbolos disponibles actualmente para el programa que desea consultar
- Documentación del `macros de sintaxis-reglas ':
- La documentación de macros en el manual está ahora separada de la de los procedimientos. Se ha añadido una nueva sección sobre `macros de sintaxis-reglas".
- Efectiva versión golpe a 2,0:
- Guile ha tenido un & quot; versión & quot eficaz; durante algún tiempo, por lo general genera como & quot; MAJOR-VERSION.MINOR-VERSION & quot ;. Este comunicado desacopla la versión en vigor a partir de la versión actual, poniéndolo antes de tiempo a 2,0. Esto debería sacudir cualquier error de distribución relacionadas con la versión.
- correcciones instalabilidad paralelas:
- Guile ahora instala sus archivos de cabecera en un directorio eficaz específica de la versión, e incluye la versión eficaz (por ejemplo 2,0) en el nombre de la biblioteca (por ejemplo libguile-2.0.so).
- Este cambio debería ser transparente para los usuarios, que deben detectar Guile a través de la macro guile.m4 o el archivo pkg-config guile-2.0.pc. Permitirá instalaciones paralelas para varias versiones de los entornos de desarrollo de Guile.
Comentarios que no se encuentran