Poplog - Poplog

Poplog é um ambiente de desenvolvimento de software de código aberto , reflexivo e compilado de forma incremental para as linguagens de programação POP-11 , Common Lisp , Prolog e Standard ML , originalmente criado no Reino Unido para ensino e pesquisa em Inteligência Artificial na Universidade de Sussex e posteriormente comercializado como um pacote comercial para desenvolvimento de software, bem como para ensino e pesquisa. Foi uma das iniciativas apoiadas por algum tempo pelo Programa Alvey, financiado pelo governo do Reino Unido .

História

Depois que um compilador incremental para Prolog foi adicionado a uma implementação de POP-11 , o nome POPLOG foi adotado, para refletir o fato de que o sistema expandido suportava programação em ambas as linguagens. O nome foi mantido, como marca registrada da University of Sussex , quando o sistema foi posteriormente (meados dos anos 1980) estendido com compiladores incrementais para Common Lisp e Standard ML baseados em um conjunto de ferramentas para implementação de novas linguagens na Máquina Virtual Poplog. As ferramentas de compilador incremental acessíveis ao usuário que permitem que compiladores para todas essas linguagens sejam adicionadas também permitem que extensões sejam feitas dentro de uma linguagem para fornecer novos poderes que não podem ser adicionados usando macros padrão que apenas permitem que o novo texto seja equivalente a uma porção mais longa do texto antigo.

Por algum tempo depois de 1983, Poplog foi vendido e suportado internacionalmente como um produto comercial, em nome da Universidade de Sussex por Systems Designers Ltd (SDL), cujo nome mudou com a mudança de propriedade. O principal trabalho de desenvolvimento continuou a ser feito por uma pequena equipe na Sussex University até 1998, enquanto marketing, vendas e suporte (exceto para usuários acadêmicos do Reino Unido, que lidavam diretamente com a equipe de Sussex) foram feitos pela SDL e seus sucessores (SD, depois SD-Scicon e EDS ) até 1991. Naquela época, uma aquisição gerencial produziu uma empresa spin-off Integral Solutions Ltd (ISL), para vender e apoiar a Poplog em colaboração com a Sussex University, que mantinha os direitos do nome ' Poplog 'e foram responsáveis ​​pelo desenvolvimento do software principal enquanto era um produto comercial. Em 1992, a ISL e a Sussex University ganharam um "Prêmio Inteligente" em reconhecimento às vendas de Poplog no valor de US $ 5 milhões. A ISL e seus clientes usaram Poplog para uma série de projetos de desenvolvimento, especialmente o sistema de mineração de dados Clementine da ISL, principalmente implementado em POP-11, usando poderosas ferramentas gráficas implementadas também em POP-11 rodando no X Window System . A Clementine teve tanto sucesso que em 1998 o ISL foi comprado pela SPSS Inc, que vendia o pacote de estatísticas e mineração de dados SPSS, para o qual precisava de uma interface gráfica melhor, adequada para usuários especialistas e não especialistas. O SPSS não queria vender e oferecer suporte ao Poplog como tal, então o Poplog tornou-se disponível como um pacote de software de código aberto gratuito , hospedado na Universidade de Birmingham , que também esteve envolvida no desenvolvimento após 1991. Mais tarde, a IBM comprou o SPSS e a Clementine agora está comercializado e suportado como SPSS Modeler .

Idiomas suportados

A linguagem principal do Poplog é o POP-11 . É usado para implementar as outras linguagens, todas compiladas de forma incremental , com um editor comum integrado. Nas versões Linux / Unix, POP-11 fornece suporte para dois gráficos tridimensionais via X .

Poplog suporta versões compiladas incrementalmente de Common Lisp , POP-11 , Prolog e Standard ML . Um pacote separado implementado por Robin Popplestone suporta uma versão do Scheme .

O Poplog tem sido utilizado tanto para pesquisa acadêmica e ensino em inteligência artificial quanto para o desenvolvimento de diversos produtos comerciais, além do Clementine. Em 1992, a ISL e a Sussex University ganharam um prêmio ICP Million Dollar em reconhecimento ao Poplog que excedeu as vendas de US $ 5 milhões.

Plataformas

O POP-11 foi implementado pela primeira vez em um computador DEC PDP-11 em 1976 e foi portado para VAX / VMS em 1980. Tornou-se Poplog por volta de 1982. Embora as primeiras vendas comerciais tenham sido para VAX / VMS, em meados da década de 1980, o principal trabalho de desenvolvimento do Poplog foi feito em computadores Sun SPARC executando Solaris , embora várias versões diferentes tenham sido vendidas, incluindo versões para HP-UX e uma versão de 64 bits do Poplog para DEC Alpha executando Digital UNIX . Depois de cerca de 1999, quando o Poplog se tornou disponível como um código-fonte aberto gratuito, a maior parte do trabalho de desenvolvimento foi feita na versão Linux, incluindo a portabilidade para o Linux de 64 bits. Uma porta parcial para Mac OS X no PowerPC foi feita em 2005.

Existe uma versão para Windows , originalmente desenvolvida para suportar Clementine, mas o subsistema gráfico Unix / Linux não funciona no Windows Poplog. A versão Windows do Clementine dependia de um pacote comercial que suportava a funcionalidade X no Windows.

Há também um projeto de código aberto que visa produzir uma versão mais neutra da plataforma do Poplog, incluindo o Windows. O desenvolvimento mais recente deste projeto inclui um componente de servidor da web para integração em aplicativos Poplog e a coleção de widgets OpenPoplog para suportar interfaces de usuário cliente em execução em um navegador da web. Um projeto Poplog de código aberto mais restrito, restrito à arquitetura AMD64 / X86-68 de 64 bits, foi configurado no GitHub por Waldek Hebisch: [1] . Esta é agora a base do Poplog Versão 16 hospedado na University of Birmingham [2] .

Informações adicionais sobre o histórico e recursos do Poplog podem ser encontradas nas entradas para POP-2 e POP-11 . O arquiteto-chefe do Poplog, responsável por muitas inovações relacionadas à portabilidade de um sistema compilado incrementalmente e ao fornecimento de suporte para uma coleção de linguagens, foi John Gibson, da Sussex University, embora o trabalho inicial tenha sido feito por Steve Hardy. Chris Mellish ajudou na implementação inicial do Prolog no POP-11. John Williams, trabalhando sob supervisão de Jonathan Cunningham, implementou o subsistema Common Lisp. Robert Duncan e Simon Nichols adicionaram o Standard ML. Entre 1980 e 1991, o projeto foi gerenciado por Aaron Sloman , até que ele foi para a Universidade de Birmingham , embora ele tenha continuado a colaborar com Sussex e ISL no desenvolvimento do Poplog depois disso. Desde 1999, ele é responsável pelo site principal do Poplog, bem como por algumas das extensões que nele se encontram, listadas no POP-11.

Implementação

O subconjunto Prolog do Poplog é implementado usando o compilador incremental extensível do POP-11 , a linguagem central do Poplog, que é uma linguagem semelhante ao Lisp de propósito geral com uma sintaxe mais convencional. A implementação exigiu que a Máquina Virtual Poplog fosse estendida para fornecer suporte para continuações do Prolog, variáveis ​​do Prolog, trilha do Prolog (gravação de ligações de variáveis ​​que podem ser desfeitas) e termos do Prolog. A implementação foi restringida pela necessidade de permitir que estruturas de dados fossem compartilhadas com outras linguagens Poplog, especialmente POP-11 e Common Lisp , fornecendo suporte para uma mistura de estilos de programação.

Referências

  1. ^ Smith, Robert; Sloman, Aaron & Gibson, John (1992). "Suporte de máquina virtual de dois níveis do POPLOG para linguagens interativas" . Em Sleeman, D. & Bernsen, N. (eds.). Diretrizes de pesquisa em ciência cognitiva, Volume 5: Inteligência artificial . Lawrence Erlbaum Associates. pp. 203–231.
  2. ^ https://www.nytimes.com/1991/08/17/business/company-news-electronic-data-wins-in-offer-for-sd-scicon.html
  3. ^ http://www.cs.bham.ac.uk/research/projects/poplog/figs/jpg/smart-poplog-5million.jpg
  4. ^ O portal poplog grátis
  5. ^ Khabaza, Tom. (1999). A História de Clementine
  6. ^ Veja a página 3 do Boletim da Universidade Sussex de 20 de maio de 1992
  7. ^ OpenPoplog

links externos