ISLISP (también escrito con mayúscula inicial como ISLisp ) es un lenguaje de programación de la familia Lisp estandarizado por el grupo de trabajo conjunto ISO/IEC JTC 1/SC 22/WG 16 [ 1 ] de la Organización Internacional de Normalización (ISO) y la Comisión Electrotécnica Internacional (IEC) [ 1 ] (comúnmente denominado simplemente SC22/WG16 o WG16). El principal resultado de este grupo de trabajo fue una norma internacional , publicada por la ISO. [ 2 ] La norma se actualizó en 2007 y se volvió a publicar como ISO/IEC 13816:2007(E). [ 3 ] [ 4 ] Aunque la publicación oficial fue a través de la ISO, existen versiones de la especificación del lenguaje ISLISP que se consideran de dominio público . [ 5 ]
El objetivo de este esfuerzo de estandarización era definir un lenguaje básico y conciso que ayudara a salvar la brecha entre los distintos dialectos de Lisp. Para lograrlo, se estudió principalmente Common Lisp , EuLisp , Le Lisp y Scheme , y se estandarizaron únicamente las características que compartían entre ellos.
Objetivos de diseño
ISLISP tiene estos objetivos de diseño: [ 6 ]
- Compatible con los dialectos Lisp existentes cuando sea posible.
- Proporcionar funcionalidad básica
- Orientado a objetos
- Diseño para la extensibilidad
- Priorizar las necesidades industriales sobre las necesidades académicas.
- Promover implementaciones y aplicaciones eficientes
ISLISP tiene espacios de nombres separados para funciones y variables (por lo tanto, es un Lisp-2 ).
El sistema de objetos de ISLISP, ILOS, es principalmente un subconjunto del Sistema de Objetos de Common Lisp (CLOS).
Principales diferencias con Common Lisp
- Existe una variable léxica global. (
defglobal) - La variable dinámica es explícita. (
dynamic) - Las palabras clave no se autoevalúan.
- La desestructuración no es compatible con
defmacro.
Implementaciones
Se han realizado implementaciones de ISLISP para muchos sistemas operativos , incluidos Windows , la mayoría de los basados en Unix y POSIX , Android , MS-DOS y OS/2 .
Las implementaciones para arquitecturas de hardware de computadoras incluyen: x86 , x86-64 , IA-64 , SPARC , SPARC9, PowerPC , MIPS , Alpha , PA-RISC , ARM , AArch64
Dos implementaciones antiguas ya no están disponibles:
- TISL , de Masato Izumi y Takayasu Ito (Universidad de Tohoku), fue intérprete y compilador. [ 27 ]
- G-LISP, creado por Josef Jelinek, era un applet de Java.
Referencias
- ↑ "Archivo de correo WG16" . Servidor FTP ( FTP ).(Para ver los documentos, consulte Ayuda:FTP )
- ↑ "ISO/IEC 13816:1997(E)" . Organización Internacional de Normalización . Consultado el 10 de noviembre de 2018 .
- ↑ "ISO/IEC 13816:2007(E)" . Organización Internacional de Normalización . Consultado el 10 de noviembre de 2018 .
- ↑ "Lenguaje de programación ILISP: Historia" .
- ↑ "Lenguaje de programación ISLISP: Especificación" . Archivado del original el 22 de enero de 2016. Consultado el 20 de marzo de 2011 .
- ↑ "ISLISP.info" .
- ↑ "Eligis" .
- ↑ "OKI ISLISP" .
- ↑ "Prime-Lisp" .
- ↑ "Iris" .
- ↑ "Masaya Taniguchi" . GitHub . Archivado del original el 21 de noviembre de 2021.
- ↑ "Código fuente de Iris" . GitHub . 4 de septiembre de 2021.
- ↑ "Iris web REPL" .
- ↑ "Masaya Taniguchi" . GitHub . Archivado del original el 21 de noviembre de 2021.
- ↑ "Código fuente de Iris" . GitHub .
- ↑ "Beso" . 8 de abril de 2017.
- ↑ «Yuji Minejima» .
- ↑ "Código fuente de Kiss" . GitHub . 26 de septiembre de 2021.
- ↑ "ISLisproid" .
- ↑ "dayLISP" .
- ↑ "Código fuente de dayLISP" .
- ↑ "Easy-ISLisp" . Archivado del original el 2 de febrero de 2017. Consultado el 30 de enero de 2017 .
- ↑ "Código fuente de Easy-ISLisp" . GitHub . 21 de noviembre de 2021.
- ↑ "Código fuente de Isle ISLISP" . GitHub . 15 de octubre de 2023.
- ↑ "islisp-compat" . GitHub . 20 de noviembre de 2024. Consultado el 5 de febrero de 2025 .
- ↑ "islisp-compat LICENSE.txt" . GitHub . Consultado el 5 de febrero de 2025 .
- ↑ "TISL: Un intérprete y compilador experimental para ISLisp" . 28 de octubre de 1998. Consultado el 6 de febrero de 2025 .
Enlaces externos
- Borrador de ILISP 2007 en formato PDF
- Borrador de ILISP 2007 en formato HTML
- Página de ILISP de Kent M Pitman
- Página de ISLISP de los desarrolladores de OKI ISLISP
- Grupo de Preservación de Software de ISLISP
- Familia de lenguajes de programación Lisp
- Lisp (lenguaje de programación)
- Lenguajes de programación con un estándar ISO