Poplog es un entorno de desarrollo de software de código abierto , reflexivo y compilado de forma incremental para los lenguajes de programación POP-11 , Common Lisp , Prolog y Standard ML , creado originalmente en el Reino Unido para la enseñanza e investigación en Inteligencia Artificial en la Universidad de Sussex , y posteriormente comercializado como un paquete comercial para el desarrollo de software, así como para la docencia y la investigación. Fue una de las iniciativas apoyadas durante un tiempo por el Programa Alvey financiado por el gobierno del Reino Unido .
Historia
Después de que se agregó un compilador incremental para Prolog a una implementación de POP-11 , se adoptó el nombre POPLOG, para reflejar el hecho de que el sistema expandido admitía la programación en ambos idiomas. El nombre se mantuvo, como marca registrada de la Universidad de Sussex , cuando el sistema se amplió más tarde (mediados de la década de 1980) con compiladores incrementales para Common Lisp y Standard ML basados en un conjunto de herramientas para implementar nuevos lenguajes en la máquina virtual Poplog. [1] Las herramientas de compilación incremental accesibles al usuario que permiten agregar compiladores para todos estos lenguajes también permiten que se realicen extensiones dentro de un idioma para proporcionar nuevos poderes que no se pueden agregar usando macros estándar que simplemente permiten que el nuevo texto sea equivalente a una porción más larga de texto antiguo.
Durante algún tiempo después de 1983, Poplog fue vendido y respaldado internacionalmente como un producto comercial, en nombre de la Universidad de Sussex, por Systems Designers Ltd (SDL), cuyo nombre cambió al cambiar la propiedad. El trabajo de desarrollo principal continuó siendo realizado por un pequeño equipo en la Universidad de Sussex hasta 1998, mientras que el marketing, las ventas y el soporte (excepto para los usuarios académicos del Reino Unido, que trataron directamente con el equipo de Sussex) fueron realizados por SDL y sus sucesores (SD, luego SD-Scicon luego EDS [2] ) hasta 1991. En ese momento, una compra de la gerencia produjo una empresa derivada Integral Solutions Ltd (ISL), para vender y apoyar Poplog en colaboración con la Universidad de Sussex, quien retuvo los derechos de el nombre 'Poplog' y fueron responsables del desarrollo del software central mientras era un producto comercial. En 1992, ISL y la Universidad de Sussex ganaron un "Smart Award" en reconocimiento a las ventas de Poplog por valor de 5 millones de dólares. [3] ISL y sus clientes utilizaron Poplog para varios proyectos de desarrollo, especialmente el sistema de minería de datos Clementine de ISL, implementado principalmente en POP-11, utilizando poderosas herramientas gráficas implementadas también en POP-11 que se ejecuta en el sistema X Window . Clementine tuvo tanto éxito que en 1998 ISL fue comprada por SPSS Inc, que había estado vendiendo el paquete de estadísticas y minería de datos SPSS para el que necesitaban una mejor interfaz gráfica adecuada para usuarios expertos y no expertos. SPSS no deseaba vender ni dar soporte a Poplog como tal, por lo que Poplog pasó a estar disponible como un paquete de software de código abierto gratuito, [4] alojado en la Universidad de Birmingham , que también había estado involucrada en el desarrollo después de 1991. Posteriormente, IBM compró SPSS y Clementine ahora se comercializa y admite como SPSS Modeler . [5]
Idiomas admitidos
El idioma principal de Poplog es POP-11 . Se utiliza para implementar los otros lenguajes, todos ellos compilados de forma incremental , con un editor común integrado. En las versiones Linux / Unix, POP-11 proporciona soporte para gráficos 2-D a través de X .
Poplog admite versiones compiladas de forma incremental de Common Lisp , POP-11 , Prolog y Standard ML . Un paquete separado implementado por Robin Popplestone admite una versión de Scheme .
Poplog se ha utilizado tanto para la investigación académica como para la docencia en inteligencia artificial y también para desarrollar varios productos comerciales, además de Clementine. En 1992, ISL y la Universidad de Sussex ganaron un premio ICP Million Dollar en reconocimiento a Poplog que superó las ventas de US $ 5 millones. [6]
Plataformas
POP-11 se implementó por primera vez en una computadora DEC PDP-11 en 1976 y se transfirió a VAX / VMS en 1980. Se convirtió en Poplog alrededor de 1982. Aunque las primeras ventas comerciales fueron para VAX / VMS, desde mediados de la década de 1980, El trabajo principal de desarrollo de Poplog se realizó en computadoras Sun SPARC que ejecutaban Solaris , aunque se vendieron varias versiones diferentes, incluidas versiones para HP-UX y una versión de 64 bits de Poplog para DEC Alpha con Digital UNIX . Después de aproximadamente 1999, cuando Poplog estuvo disponible como código abierto gratuito, la mayor parte del trabajo de desarrollo se realizó en la versión de Linux, incluida la migración a Linux de 64 bits. En 2005 se realizó una adaptación parcial a Mac OS X en PowerPC .
Existe una versión para Windows , desarrollada originalmente para admitir Clementine, pero el subsistema gráfico Unix / Linux no funciona en Windows Poplog. La versión para Windows de Clementine dependía de un paquete comercial que admitía la funcionalidad X en Windows.
También hay un proyecto de código abierto [7] que tenía como objetivo producir una versión más neutral de plataforma de Poplog, incluido Windows. El desarrollo más reciente de este proyecto incluye un componente de servidor web para integrarse en aplicaciones Poplog y la colección de widgets OpenPoplog para soportar interfaces de usuario cliente que se ejecutan en un navegador web. Waldek Hebisch creó en Github un proyecto Poplog de código abierto más limitado, restringido a la arquitectura AMD64 / X86-68 de 64 bits: [1] . Esta es ahora la base de Poplog Versión 16 alojada en la Universidad de Birmingham [2] .
Se puede encontrar información adicional sobre la historia y las características de Poplog en las entradas para POP-2 y POP-11 . El arquitecto principal de Poplog, responsable de muchas innovaciones relacionadas con la portátilización de un sistema compilado de forma incremental y que proporcionaba soporte para una colección de lenguajes, fue John Gibson, de la Universidad de Sussex, aunque el trabajo más antiguo fue realizado por Steve Hardy. Chris Mellish ayudó con la implementación inicial de Prolog en POP-11. John Williams, bajo la supervisión de Jonathan Cunningham, implementó el subsistema Common Lisp. Robert Duncan y Simon Nichols agregaron ML estándar. Entre 1980 y 1991, Aaron Sloman dirigió el proyecto , hasta que fue a la Universidad de Birmingham , aunque continuó colaborando con Sussex e ISL en el desarrollo de Poplog después de eso. Desde 1999, ha sido responsable del sitio web principal de Poplog, así como de algunas de las extensiones que se encuentran allí, enumeradas en POP-11.
Implementación
El subconjunto Prolog de Poplog se implementa utilizando el compilador incremental extensible de POP-11 , el lenguaje central de Poplog, que es un lenguaje similar a Lisp de propósito general con una sintaxis más convencional. La implementación requirió que la máquina virtual Poplog se extendiera para brindar soporte para las continuaciones de Prolog, las variables de Prolog, la ruta de Prolog (registro de enlaces de variables que se pueden deshacer) y los términos de Prolog. La implementación se vio limitada por la necesidad de permitir que las estructuras de datos se compartieran con los otros lenguajes Poplog, especialmente POP-11 y Common Lisp , proporcionando así soporte para una mezcla de estilos de programación.
Referencias
- ^ Smith, Robert; Sloman, Aaron y Gibson, John (1992). "Soporte de máquina virtual de dos niveles de POPLOG para lenguajes interactivos" . En Sleeman, D. y Bernsen, N. (eds.). Direcciones de investigación en ciencia cognitiva Volumen 5: Inteligencia artificial . Lawrence Erlbaum Associates. págs. 203–231.
- ^ https://www.nytimes.com/1991/08/17/business/company-news-electronic-data-wins-in-offer-for-sd-scicon.html
- ^ http://www.cs.bham.ac.uk/research/projects/poplog/figs/jpg/smart-poplog-5million.jpg
- ^ El portal gratuito de Poplog
- ^ Khabaza, Tom. (1999). La historia de Clementine
- ^ Consulte la página 3 del boletín de la Universidad de Sussex del 20 de mayo de 1992
- ^ OpenPoplog
enlaces externos
- El portal gratuito de Poplog
- El Poplog en línea Eliza
- Foto de la placa del premio ICP
- Los detalles también están disponibles aquí: [3] http://www.cs.bham.ac.uk/research/projects/poplog/isl-docs/poplog-sussex-bulletin ]