Usuário:Icoeng/novos-artigos

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

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

Plataforma:

editar

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
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

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

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

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

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
(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)
  )
)
  Este artigo sobre programação de computadores é um esboço. Você pode ajudar a Wikipédia expandindo-o.


Ligações externas

editar