PicoLisp es un lenguaje de programación, un dialecto del lenguaje Lisp . Se ejecuta en sistemas operativos que incluyen Linux y otros que son compatibles con la Interfaz de sistema operativo portátil ( POSIX ). Sus características más destacadas son la sencillez y el minimalismo . Se basa en un tipo de datos interno : una celda. En el nivel del lenguaje, un programador puede usar tres tipos de datos diferentes (números, símbolos y listas) que se representan mediante celdas y se diferencian por bits al final de la celda. [2] Es un software gratuito y de código abierto publicado bajo una licencia MIT. (X11).
Paradigmas | Funcional , procedimental , orientado a objetos , declarativo , reflexivo , meta |
---|---|
Familia | Ceceo |
Diseñada por | Alexander hamburguesa |
Apareció por primera vez | 1988 |
Lanzamiento estable | 21.6 / 27 de junio de 2021 |
Disciplina de mecanografía | pato , dinámico , fuerte |
Lenguaje de implementación | LLVM , PicoLisp |
Plataforma | IA-32 , x86-64 , Arm64 |
SO | POSIX |
Licencia | MIT |
Extensiones de nombre de archivo | .l |
Sitio web | picolisp |
Dialectos | |
Ersatz PicoLisp, miniPicoLisp [1] |
Características
Las funciones pueden aceptar tipos y números arbitrarios de argumentos. Las macros son necesarias solo en casos excepcionales y se implementan mediante la función de cotización. PicoLisp no incluye la función lambda de Lisp . Esto se debe a que la función de cotización se cambia para devolver todos sus argumentos sin evaluar, no solo los car
del primero. [3]
Una característica especial es el funcionamiento intrínseco de creación, lectura, actualización y eliminación (CRUD). Los símbolos persistentes son ciudadanos (objetos) de primera clase , se cargan automáticamente desde los archivos de la base de datos cuando se accede a ellos y se vuelven a escribir cuando se modifican. Las aplicaciones se escriben utilizando una jerarquía de clases de entidades y relaciones .
Otras características incluyen: motor Prolog , motor de base de datos y consultas de base de datos, bases de datos distribuidas, integración de funciones de lenguaje C y llamadas de función C nativas, gestión de procesos secundarios, comunicación entre procesos , interfaz gráfica de usuario (GUI) del navegador e internacionalización y localización .
Historia
En la década de 1980, comenzó el desarrollo PicoLisp en el Macintosh , y fue utilizado en aplicaciones comerciales [ ¿cuál? ] Desarrollo desde entonces. [ Cita requerida ] El diseño de PicoLisp es muy similar a la primera versión de MacLisp, y sobre todo Interlisp portátil Lisp estándar. [4] Fue portado a DOS y Unix SCO . Desde 1993, se utilizó principalmente en Linux. A mediados de la década de 1990, se agregaron funciones de base de datos.
Las primeras versiones fueron escritos en una mezcla de C y lenguaje ensamblador . En 1999, una primera reescritura se llevó a cabo a partir de cero, totalmente en C. En 2002, esa versión fue puesto en libertad bajo una Licencia Pública General de GNU (GNU GPL). En 2010, cambió a una licencia MIT / X11.
En 2009, se lanzó la versión de 64 bits , otra reescritura, esta vez escrita en ensamblado genérico, que a su vez se implementa en PicoLisp. Esta versión agrega soporte para corrutinas .
En diciembre de 2010, se lanzó una versión de Java llamada Ersatz PicoLisp . [5]
En septiembre de 2014, Burger anunció el proyecto PilMCU en el servidor de listas de desarrollo de PicoLisp , un esfuerzo con George Orais para implementar PicoLisp en hardware directamente. [6]
En julio de 2015, Burger anunció PilOS, el sistema operativo PicoLisp, un prototipo mínimo basado en la modificación de PilMCU dirigido a aplicaciones integradas. [7] Se ejecuta en hardware de PC estándar x86-64, directamente desde el BIOS e incluye todas las características de PicoLisp de 64 bits (menos las llamadas a funciones nativas, debido al hecho de que no hay otro entorno nativo como la biblioteca estándar C) ; en principio, funciona como un sistema operativo propio. [8]
En el verano de 2016, se inició el desarrollo de PilBox ("PicoLisp Box"), una aplicación genérica de Android que permite escribir aplicaciones en PicoLisp puro. Todavía se está desarrollando y manteniendo.
Referencias
- ^ "Descarga de PicoLisp" . Laboratorio de software . Consultado el 18 de noviembre de 2018 .
- ^ Hamburguesa, Alexander. "Estructuras internas" . Laboratorio de software . Consultado el 18 de noviembre de 2018 .
- ^ "¡Incluso los pequeños detalles marcan la diferencia!" .
- ^ https://www.mail-archive.com/[email protected]/msg04884.html
- ^ Burger, Alexander (8 de mayo de 2013). "Ersatz PicoLisp" . Laboratorio de software .
- ^ "Anunciar: PicoLisp en hardware" .
- ^ https://www.mail-archive.com/[email protected]/msg05364.html
- ^ https://picolisp.com/wiki/?PilOS
enlaces externos
- Página web oficial
- Picolisp en C2 wiki