Articulo de referencia

PicoLisp

{{cite web |url=https://software-lab.de/down.html |title=PicoLisp Download |website=Software Lab |access-date=18 November 2018}} "},"influenced by":{"wt":""},"influenced":{"wt":...

PicoLisp es un lenguaje de programación, un dialecto del lenguaje Lisp . Se ejecuta en sistemas operativos como Linux y otros compatibles con POSIX ( Portable Operating System Interface ). Sus características más destacadas son la simplicidad y el minimalismo . Está construido sobre un único tipo de dato interno : la celda. A nivel de lenguaje, el programador puede utilizar tres tipos de datos diferentes (números, símbolos y listas), representados por celdas y diferenciados por bits al final de cada una. [ 2 ] Es software libre y de código abierto, publicado bajo la licencia MIT (X11).

Características

Las funciones pueden aceptar tipos y números de argumentos arbitrarios. Las macros solo son necesarias en casos excepcionales y se implementan mediante la función quote. PicoLisp no incluye la función lambda de Lisp . Esto se debe a que la función quote se modifica para devolver todos sus argumentos sin evaluar, no solo el carprimero. [ 3 ]

Una característica especial es la funcionalidad intrínseca de creación, lectura, actualización y eliminación (CRUD). Los símbolos persistentes son elementos de primera clase (objetos), se cargan automáticamente desde los archivos de la base de datos al acceder a ellos y se vuelven a escribir al modificarlos. 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 a la base de datos, bases de datos distribuidas, inserción en línea de funciones del lenguaje C y llamadas a funciones nativas de C, gestión de procesos secundarios, comunicación entre procesos , interfaz gráfica de usuario (GUI) del navegador e internacionalización y localización .

Historia

El diseño de PicoLisp es muy similar a la primera versión de MacLisp, Interlisp y, principalmente, a Portable Standard Lisp. [ 4 ] Fue adaptado a DOS y SCO Unix . Desde 1993, se utilizó principalmente en Linux. A mediados de la década de 1990, se añadieron funciones de base de datos.

Las primeras versiones se escribieron combinando lenguaje C y lenguaje ensamblador . En 1999, se realizó una primera reescritura desde cero, completamente en C. En 2002, esa versión se publicó bajo la Licencia Pública General de GNU (GNU GPL). En 2010, se cambió a la licencia MIT/X11.

En 2009 se lanzó la versión de 64 bits , otra reescritura, esta vez escrita en lenguaje ensamblador genérico, que a su vez está implementado en PicoLisp. Esta versión añade 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 la lista de correo de desarrollo de PicoLisp , un esfuerzo con George Orais para implementar PicoLisp directamente en hardware. [ 6 ]

En julio de 2015, Burger anunció PilOS - The PicoLisp Operating System, un prototipo mínimo basado en la modificación de PilMCU dirigido a aplicaciones embebidas. [ 7 ] Se ejecuta en hardware estándar de PC x86-64, directamente desde la BIOS e incluye todas las características de PicoLisp de 64 bits (menos las llamadas a funciones nativas, debido a que no hay otro entorno nativo como la biblioteca estándar de C); en principio, funciona como su propio sistema operativo. [ 8 ]

En el verano de 2016, se inició el desarrollo de PilBox ("PicoLisp Box"), una aplicación genérica para Android que permite escribir aplicaciones en PicoLisp puro. Su desarrollo y mantenimiento continúan. [ 9 ]

En 2021, PicoLisp se reimplementó en LLVM y se lanzó como pil21 . El lenguaje fuente compilado a LLVM-IR también utiliza la sintaxis de PicoLisp.

Referencias

  1. "Descarga de PicoLisp" . Software Lab . Consultado el 18 de noviembre de 2018 .
  2. Burger, Alexander. "Estructuras internas" . Software Lab . Consultado el 18 de noviembre de 2018 .
  3. "¡Hasta los pequeños detalles marcan la diferencia! "
  4. "Re: Raíces de PicoLisp" .
  5. Burger, Alexander (8 de mayo de 2013). "Ersatz PicoLisp" . Software Lab .
  6. "Anuncio: PicoLisp en hardware" .
  7. "PilMCU ha muerto - ¡Larga vida a PilOS!" .
  8. "PicoLisp Wiki: Pilos" .
  9. "PicoLisp PilBox en Google Play Store" .
  • Sitio web oficial
  • Picolisco en la wiki de C2
  • Un blog sobre programación funcional en PicoLisp.
  • Lanzamiento continuo de PicoLisp
  • Repositorio de PicoLisp en GitHub