Usuário:Icoeng/novos-artigos

Origem: Wikipédia, a enciclopédia livre.

Sobre Criação/Eliminação de subpáginas do usuário

Predefinição de carencia de fontes: [carece de fontes?]

______ AutoLisp. Referencias para o artigo:

Usando Linguagem AutoLISP (Site em inglês da Autodesk) - (boa para constar como ligação externa)

AutoLISP Reference in Autodesk

AutoLISP Function Synopsis

discução de edição revertida

interessante edição antiga apagada

______Tarefas de complementação:

Completar ou remover seção Funções do AutoLisp

Melhorar seção Exemplos de Rotinas.

Link para [AutoCad] em "Ver Também"? Não porque ja tem o link no artigo.

Quando pronta verificar pgs. afluentes e se não houver colocar em Autocad, em Lisp, em CAD e Linguagens de programação.

______ Artigo:

AutoLISP é uma linguagem de programação da família Lisp com suas peculiaridades como a de ser orientada ao processamento de listas e derivada de projetos de inteligência artificial.

Acrônimo de: AUTOcad LISt Processing
Em português: Processamento de LIStas do AUTOcad.

Características[editar | editar código-fonte]

É uma programação estruturada, e modular e interpretada. [carece de fontes?]

Plataforma:[editar | editar código-fonte]

Roda no ambiente do AutoCAD e em alguns derivativos como Autodesk Map 3D e o Autodesk Architectural Desktop, ampliando suas potencialidades gráficas, textuais, de manipulação de arquivos, dispositivos, entidades de desenho e outras.
A interface de programação e o interpretador não são incluídos na versão AutoCAD LT do produto.
Foi produzido originalmente pela Autodesk e depois implementada em alguns softwares CAD de terceiros como Intelicad.

Formas de carregamento na interface:[editar | editar código-fonte]

Na linha de comando ou prompt "Command:" do autoCAD:
  1. Por digitação direta com execução imediata;
  2. Por copy/paste, também com execução direta;
Por carregamento de arquivo de texto em formato ASCII geralmente mas não obrigatoriamente com extensão .lsp:
  1. Ao ser arrastado e solto no editor de desenhos (tela gráfica);
  2. Ao ser carregado pela função Load de sintaxe (load "nomearq.lsp");
  3. Através de outra função ou programa como AutoLoad.lsp para carregamento automático ao ser invocado e do arquivo com o mesmo nome do menu carregado e de extensão .mnl de execução na inicialização da seção de desenho;
  4. Com o comando AppLoad, nativo da plataforma que em algumas versões também é um programa em AutoLisp.

Usos de AutoLisp e aplicabilidade[editar | editar código-fonte]

Criada para personalizações de rotinas e comandos do AutoCAD presta-se também á qualquer programação envolvendo cálculos e manipulação de dados, arquivos e dispositivos devido à suas potencialidades e facilidade de encontrar a interface que foi bem popularizada.

Potencialidades[editar | editar código-fonte]

Herdou o uso intensivo de memória, velocidade e capacidade de processamento do AutoCad, desenvolvido para controlar grandes volumes de dados como coordenadas, cores, camadas e inúmeras outras propriedades de milhares de objetos variados como linhas, curvas, blocos com atributos, hachuras, textos e outras entidades que compões o desenho técnico.

Possui facilidade de processamento de listas de qualquer comprimento e de listas aninhadas ou listas de listas da linguagem lisp, presta-se ao processamento de dados em massa.

Contando com o eficiente gerenciamento dos arquivos de paginação do AutoCAD para gravação e recuperação de dados, sua capacidade de processamento é limitada apenas pela quantidade de memória física de disco ou seja, quase inesgotável nos padrões atuais de armazenamento.

Funções do AutoLisp (incompleta)[editar | editar código-fonte]

Provido de funções nativas necessário para efetuar quaisquer sequência de cálculos, funções gráficas de desenho e manipulação de arquivos e dispositivos. Outras funções de qualquer complexidade são definidas a partir da reunião de sequências de funções através da função (defun ()).

  1. Básicas
    Aritméticas, Processamento de textos, Condicionais e lógicas, Manipulação de Listas, Manipulações de Símbolos, Tratamento de Funções, Tratamento de Erros
  2. Utilitárias
    Consulta e comando, Controle de tela, Entrada do usuário, Funções Geométricas, Funções de Conversão, Manipulação de arquivos, Dispositivos de acesso
  3. Conjuntos de seleção, objeto, e tabelas e símbolos
    Manipulação de Seleção, Tratamento de Objeto, Tratamento de dados estendidos, Tratamento de Tabela de símbolos e Dicionário

Sintaxe[editar | editar código-fonte]

As sequências de instruções podem tanto de execução direta ou armazenadas sob um nome de função ou comando e ser invocado a qualquer tempo pelo usuário ou por outras rotinas.

Possui constantes e variáveis locais e globais que são passadas para as funções que geram outras constantes e variáveis e retornam sempre a última operação avaliada.

Linhas precedidas por dois pontos como esta são apenas comentários, sendo ignoradas pelo interpretador.

Não difere minusculas/maiúsculas sendo recomendável o uso de maiúsculas apenas em casos especiais.

Na redação é recomendado o uso de dois níveis de indentação para legibilidade do programa.

Exemplos de rotinas[editar | editar código-fonte]

(defun hello_world ()
  (alert "Hello World!")
)
;Ex. da mesma rotina sem expor a interface na linha de comando.
;A função princ, última avaliada, nada retorna suprimindo o eco de
;execução na linha de comando.
(defun c:hello_world ()  (alert "Hello World!")
  (princ)
)

; exemplo de flexibilidade do LISP
(cond
  ((= a b) (princ "\n(a) and (b) are equal"))
  ((and (= (type a) 'INT) (= (type b) 'INT)) 
   (princ (strcat "\n(a)+(b)=" (itoa (+ a b))))
  )
  ((and (= (type a) 'STR) (= (type b) 'STR))
   (princ (strcat "\n(a)+(b)=" a b))
  )
  ((and (listp a) (= (type b) 'SUBR))
   (mapcar '(lambda (x) (princ (b x)) ) a)
  )
)
Ícone de esboço Este artigo sobre programação de computadores é um esboço. Você pode ajudar a Wikipédia expandindo-o.


Ligações externas[editar | editar código-fonte]