Máquina Lisp

Máquina Lisp MIT CADR no Museu MIT
Máquina Lisp Symbolics 3640

Uma máquina Lisp (ou LispM para abreviar ) é um computador cujo processador é otimizado para a execução de programas LISP e cujo sistema operacional e aplicativos típicos são escritos em LISP. As máquinas Lisp oferecem um ambiente de desenvolvimento integrado conveniente . Algumas máquinas Lisp também foram usadas sem um ambiente de desenvolvimento para o uso de aplicativos Lisp. As máquinas Lisp foram projetadas nas décadas de 1970 e 1980 para lidar melhor com tarefas de inteligência artificial (IA). Algumas máquinas também foram usadas para animação . O número de máquinas Lisp usadas era muito pequeno. Existem estimativas entre 5.000 e 7.000 peças.

Apesar deste pequeno número de alguns conceitos de sistemas de computadores de hoje em máquinas Lisp foram testados e utilizados pela primeira vez de forma produtiva como gráficos a cores, sistemas de janelas , ratos de computador , redes de computadores , hipertexto , compilação incrementais e o conceito de de usuário único estações de trabalho .

Por causa dos grandes avanços na tecnologia de processadores na década de 1990, que também tornaram possíveis microprocessadores gerais suficientemente rápidos , e o inverno AI , os fabricantes de máquinas Lisp mergulharam em uma crise e a produção de máquinas Lisp terminou.

Ideia técnica por trás das máquinas Lisp

Durante as décadas de 1960 e 1970, a linguagem de programação Lisp era usada principalmente para projetos de pesquisa em inteligência artificial . Os computadores disponíveis foram otimizados para processar programas em linguagens como Assembler ou Fortran com o menor consumo de memória e tempo de computação possível. A execução de programas Lisp, por outro lado, exigia recursos consideráveis ​​para a época. Uma razão para isso foram os programas Lisp cada vez mais complexos e as grandes quantidades de dados que eram processados ​​em aplicativos de IA.

Lisp usa tipagem dinâmica e gerenciamento de memória dinâmica ( coleta de lixo ). As máquinas Lisp geralmente oferecem operações genéricas. A operação da máquina + aceita qualquer tipo de número em tempo de execução. O processador determina os tipos de argumentos, verifica sua aplicabilidade, realiza conversões, seleciona a adição apropriada e então a aplica. Para tanto, as palavras de dados foram fornecidas com informações do tipo (marcadas) . A verificação de tipo poderia ocorrer em paralelo e era muito mais rápida do que uma implementação de software. Os comprimentos de palavra típicos para máquinas Lisp são 32 bits (por exemplo, TI Explorer microprocessador), 36 bits (Symbolics 3600) ou 40 bits ( Symbolics Ivory ). Com um comprimento de palavra de 36 bits, dados com 32 bits e tags com 4 bits também cabem em uma palavra de dados.

Além disso, a memória virtual foi introduzida e a coleta de lixo suportada pelo hardware. Em máquinas Lisp comerciais, funções Lisp inteiras foram implementadas em hardware.

Para oferecer aos usuários o máximo de potência computacional possível, as máquinas Lisp foram projetadas como computadores monousuário (com suporte para telas de bitmap, teclado, mouse, interface de rede, discos rígidos , drives de fita e vários slots de expansão). Isso era incomum na época em que os mainframes eram usados como um sistema multiusuário por meio de terminais . Para permitir que vários usuários trabalhassem juntos, as máquinas Lisp foram projetadas com a capacidade de formar redes de computadores (inicialmente Chaosnet , posteriormente também Ethernet ), o que também era incomum para a época.

As máquinas Lisp também foram líderes no campo do hipertexto . O sistema de documentação do fabricante de máquinas Lisp Symbolics conquistou diversos prêmios.

Não apenas programas Lisp rodam em máquinas Lisp. Existem também compiladores para, por exemplo, C , Pascal , Fortran , Ada e Prolog . Esses compiladores também foram escritos principalmente em Lisp e podem ser usados ​​tão interativamente quanto o compilador Lisp.

história

Iniciado no MIT AI Lab e Xerox

Em 1973, Richard Greenblatt e Tom Knight começaram a desenvolver um protótipo para uma máquina que executaria código Lisp de forma otimizada. A primeira máquina sobre a qual Knight escreveu sua tese de mestrado foi chamada de máquina CONS ( em homenagem à função Lisp cons) e foi concluída em 1976. A máquina CONS tinha uma arquitetura de 24 bits e ainda precisava de um PDP-10 para funcionar. Depois que a máquina foi apresentada em uma conferência de Inteligência Artificial em 1978, a DARPA começou a financiar o projeto e as empresas expressaram interesse em comprar uma máquina Lisp. Isso levou ao desenvolvimento da máquina CADR (baseada na função Lisp cadr), da qual foram produzidas 25 peças. O grande interesse pelas máquinas Lisp levou à criação de uma empresa de marketing.

Paralelamente ao desenvolvimento no MIT , a BBN Technologies desenvolveu sua própria máquina Lisp (Jericho) , que, no entanto, nunca foi comercializada. A equipe desapontada foi então perseguida pela Xerox e desenvolveu uma máquina Lisp chamada Dolphin no Xerox PARC em 1979 . As máquinas Xerox Lisp eram baseadas em InterLisp , ao contrário das máquinas MIT, que eram baseadas em Maclisp .

Comercialização: Symbolics Inc., Lisp Machines Inc.

Em 1979, houve uma disputa entre Russell Noftsker e Greenblatt sobre o modelo de negócios da empresa. Noftsker queria construir uma empresa tradicional, enquanto Greenblatt queria um modelo de negócios que fosse compatível com a ética de hacking do MIT AI Lab e que renunciasse ao capital de risco . Como Noftsker, que havia deixado o AI Lab em 1973 para trabalhar no setor privado, já tinha experiência no mundo comercial e também havia uma disputa entre Greenblatt e alguns funcionários do AI Lab por outros motivos, Noftsker conseguiu muitos empregados para ganhar entre outros Thomas Knight, para seus planos e fundou Symbolics Inc . Greenblatt inicialmente permaneceu passivo e ficou muito chateado com Noftsker. No entanto, a Control Data Corporation (CDC) demonstrou grande interesse em adquirir uma máquina MIT-CADR; Alexander Jacobson, um consultor do CDC, persuadiu a Greenblatt a finalmente fundar sua própria empresa, a Lisp Machines Inc. (LMI). Em 1980/1981 a Symbolics lançou o LM-2 , que era uma máquina MIT-CADR "reembalada". A LMI também lançou uma máquina MIT-CADR, a máquina LMI-CADR.

A competição entre a LMI e a Symbolics significou que os funcionários de ambas as empresas tiveram que deixar o AI Lab. Apenas Richard Stallman e Marvin Minsky ficaram para trás. Além disso, a LMI e a Symbolics licenciaram sua tecnologia e software do MIT e concederam ao MIT o direito de usar suas alterações, mas a Symbolics recusou o MIT a integrar as alterações no protótipo e software originais para que a LMI não pudesse usá-las. Isso irritou Stallman, que se tornou um defensor do software livre . Stallman usou o acesso no MIT às máquinas Lisp para reconstruir as mudanças e fornecer o LMI. No entanto, o LMI também manteve suas próprias alterações para a máquina Lisp fechadas.

A LMI licenciou suas máquinas Lisp para a Texas Instruments , que produzia máquinas baseadas no LMI Lambda com Explorer I / II.

Fim das máquinas Lisp

No final dos anos 1980 e início dos anos 1990, o já pequeno mercado para máquinas Lisp entrou em colapso. A LMI já estava insolvente em 1986 e uma tentativa de ressuscitar a empresa como GigaMos Systems falhou devido a problemas legais do investidor. A Xerox parou de desenvolver outras máquinas Lisp relativamente cedo.

Existem muitas razões para o colapso. Por um lado, o mercado era muito pequeno. As especulações assumem entre 5.000 e 7.000 máquinas. Isso garantiu que os fabricantes pudessem investir menos no desenvolvimento técnico das máquinas Lisp, enquanto os fabricantes de computadores convencionais desenvolveram processos cada vez melhores e as máquinas Lisp logo os alcançaram com velocidade e até os ultrapassaram. Empresas como Lucid Inc. e Franz Inc. começaram a vender ambientes Lisp para microcomputadores . A transferência do software do sistema operacional Symbolics Genera de 1992 para um sistema DEC Tru64 UNIX / Alpha foi três vezes mais rápido que a máquina Lisp mais rápida.

Além disso, as expectativas exageradas de inteligência artificial não foram atendidas, razão pela qual os fundos para muitos projetos de pesquisa de IA foram cortados (o chamado inverno de IA ). O corte maciço no financiamento do projeto SDI (também conhecido como projeto Star Wars ) atingiu duramente o mercado. Muitos projetos de pesquisa em IA (especialmente na área de sistemas especialistas ) foram financiados por fundos SDI. O mercado mais importante para máquinas Lisp entrou em colapso.

Fabricante de máquinas Lisp

Máquinas Lisp

Máquinas Lisp
Ano de publicação Sobrenome Especialidade
1975/1976 COM CONTRAS primeira máquina Lisp; Arquitetura de 24 bits
1977/1978 COM CADR
1979 Xerox 1100 (Dolphin) baseado no Xerox Alto
1980/1981 Simbólica LM-2 "Reembalado" COM CADR
1980/1981 LMI CADR "Reembalado" COM CADR
1981 Xerox 1108 (dente de leão) baseado no Xerox Star
1982 Symbolics 3600 com palavra de dados de 36 bits e espaço de endereço de 28 bits; incluindo Macsyma e prólogo
1982 Xerox 1109 (Dandetiger) idêntico ao Xerox 1108, mas maior expansão de memória
1983 LMI Lambda
1983 Texas Instruments Explorer I. LMI Lambda produzido sob licença
1983 Xerox 1132 (Dorado)
1984 Symbolics 3650
1985 Xerox 1185/1186 (Pomba / Alvorada) 1185 apenas com ambiente de execução , 1186 com ambiente de programação completo
1985 Chip Texas Instruments Lisp microprocessador integrado; 32 bits
1986 Fujitsu FACOM alfa Lisp e Prolog coprocessador para Fujitsu mainframes ; apenas máquina Lisp japonesa
1986 LMI K-Machine design de hardware completamente novo; microprocessador integrado; não pôde ser concluído devido à insolvência da LMI
1986 Symbolics 3620
1986 IIM IIM produziu alguns protótipos
1987 Marfim Simbólico microprocessador integrado; 40 bits + 8 bits ECC; Base para várias máquinas Lisp
198? Symbolics XL400 Estação de trabalho baseada em marfim com barramento VME
1987 Texas Instruments Explorer II é baseado no chip Lisp da TI
1988 Simbólica MacIvory I. Placa de plug-in Nubus para computadores Apple Macintosh , baseada em Ivory
1988 Symbolics XL400 Estação de trabalho baseada em marfim com barramento VME
1988 Texas Instruments MicroExplorer Placa de plug-in Nubus para computadores Apple Macintosh, baseada no chip Lisp da TI
1989 Simbólica MacIvory II Placa de plug-in Nubus para computadores Apple Macintosh, baseada em Ivory
1989 Symbolics UX400 Placa de coprocessador de barramento VME baseada em marfim para computadores SUN
1990 Symbolics XL1200 Estação de trabalho baseada em marfim com barramento VME
1990 Symbolics UX1200 Placa de coprocessador de barramento VME baseada em marfim para computadores SUN
1991 Simbólica MacIvory III Placa de plug-in Nubus para computadores Apple Macintosh, baseada em Ivory
1992 Symbolics XL1201 Estação de trabalho desktop baseada em Ivory com barramento VME
1992 Symbolics NXP1000 Máquina Lisp baseada em Ivory sem display próprio
1993 Symbolics Open Genera máquina virtual Lisp para Tru64 UNIX em DEC Alpha

literatura

  • Paul Graham : Anatomy of a Lisp Machine. In: AI Expert. Vol. 3, No. 12, Dezembro de 1988, ISSN  0888-3785 , pp. 26-32.
  • Andrew R. Pleszkun, Matthew J. Thazhuthaveetil: The Architecture of Lisp Machines. In.: Computador IEEE. Vol. 20, No. 3, março de 1987, pp. 35-44.
  • Charles L. Ditzel, Douglas Schuler, Virginia Thomas: A Lisp Machine Profile. Symbolics 3650. In: AI Expert. Vol. 2, No. 1, janeiro de 1987, pp. 69-73
  • Peter M. Kogge: The Architecture of Symbolic Computers. (= Série Mc-Graw-Hill em supercomputação e processamento paralelo ) McGraw-Hill, New York et al. 1991, ISBN 0-07-035596-7 .

Links da web

Commons : máquina  Lisp - máquina Lisp

Evidência individual

  1. Lispm FAQ e História Oral ( Memento do originais de 8 de Novembro de 2007, na Internet Archive ) Info: O arquivo de ligação foi inserido automaticamente e ainda não foi marcada. Verifique o link original e o arquivo de acordo com as instruções e remova este aviso. em andromeda.com @ 1@ 2Modelo: Webachiv / IABot / www.andromeda.com
  2. ^ Symbolics Inc: Symbolics Technical Summary ( Memento 1 de novembro de 2012 no Internet Archive ), 1985
  3. a b c Alvin Graylin, Kari Anne Hoier Kjolaas, Jonathan Loflin, Jimmie D. Walker: Symbolics, Inc.: A failure of heterogeneous engineering. ( Memento de 9 de maio de 2013 no Internet Archive )
  4. ^ A b c Steven Levy: Hackers: Heróis da revolução do computador. New York 1984, ISBN 0-385-19195-2
  5. Instalações de computação para IA: uma pesquisa de opções do presente e do futuro próximo, AI Magazine Volume 2 Número 1
  6. Uma Breve História do Lisp Machines ( Memento do originais de 13 de Agosto de 2006, no Internet Archive ) Info: O arquivo de ligação foi inserido automaticamente e ainda não foi marcada. Verifique o link original e o arquivo de acordo com as instruções e remova este aviso. em andromeda.com @ 1@ 2Modelo: Webachiv / IABot / www.andromeda.com
  7. ^ A b Minhas experiências Lisp e o desenvolvimento de GNU Emacs em gnu.org
  8. ^ A b Dan Weinreb: Refutação à história de Stallman sobre a formação de Symbolics e LMI ( lembrança de 13 de dezembro de 2007 no arquivo da Internet ) , 11 de novembro de 2007
  9. ^ Lisp Machine Inc. K-machine em tunes.org
  10. Benchmarks OpenGenera ( Memento de 20 de abril de 2014 no Internet Archive ) em blog.b9.com
  11. A máquina Lisp: experimento nobre ou falha fabulosa? em withy.org
  12. ^ Martin Fransman: O mercado e além: tecnologia da informação no Japão . Cambridge University Press, 1993, ISBN 0-521-43525-0 ( visualização limitada na Pesquisa de Livros do Google).
  13. Avaliação da máquina FACOM ALPHA Lisp em acm.org