Está en la página 1de 3

Conceptos Básicos de AUTOLISP – C.

11
Juan Felipe López Hurtado – jflopezh@unal.edu.co

Dibujo Básico

Departamento de Ingeniería Mecánica y Mecatrónica

Universidad Nacional de Colombia – Facultad de Ingeniería

I. Introducción Desarrollar programas para AUTOCAD en AUTOLISP es


básicamente escribir un código en un editor de texto, guardarlo con
En el presente trabajo se explica inicialmente el concepto de lenguaje extensión .lsp y luego reproducirlo en AUTOCAD
de programación para contextualizar hacia AUTOLISP, para luego
analizar sus conceptos básicos. El trabajo finaliza con sus respectivas D. ¿Qué Tipo de Lenguaje es AUTOLISP?
conclusiones y referencias.
Como ya se mencionó anteriormente, AUTOLISP es un lenguaje
II. Conceptos básicos de AUTOLISP derivado del Lisp (List Processing, en español, “Procesamiento de
Listas”), éste es el segundo lenguaje de programación de alto nivel
A. ¿Qué es un Lenguaje de Programación? más antiguo, lo cual quiere decir que es un lenguaje en el que los
algoritmos se expresan de una manera adecuada para la capacidad
Un lenguaje de programación es un lenguaje con sintaxis y semántica cognitiva humana, pues no tiene mayor sintaxis en comparación con
propias, escrito de tal forma que una máquina pueda procesarlo. Los los lenguajes de bajo nivel, que expresan los algoritmos más para ser
lenguajes de programación están diseñados para realizar procesos que procesados por máquinas. El Lisp fue diseñado por John McCarthy y
pueden ser llevados a cabo por una máquina. otros colaboradores del MIT; actualmente es un lenguaje de gran uso,
pues se convirtió en la base de varios otros. La estructura básica del
Todo lenguaje de programación debe tener una forma de ordenar Lisp es la lista, una secuencia ordenada que contiene elementos que
estrictamente sus diferentes símbolos y una manera en la que estos pueden ser funciones, nombres, números, etc., esto hace que sea un
puedan ser entendidos o procesados; esto es, a lo que se hacía lenguaje sencillo y de fácil aprendizaje.
referencia anteriormente con sintaxis y semántica. Los lenguajes de
programación se usan para representar algoritmos o llamados de otra E. Operadores Básicos en AUTOLISP
manera, programas, que representan de manera lógica una serie de
pasos a seguir. 1) Expresiones: Un programa en AUTOLISP consiste en una serie
de expresiones, estas van encerradas en paréntesis.
No se debe confundir lenguaje de programación con lenguaje
informático, pues el lenguaje informático contiene al lenguaje de 2) Funciones: Una función es una expresión que puede ser llamada
programación y varios más, como es el caso del HTML, el cual no o establecida, tienen la siguiente forma:
ejecuta ningún algoritmo, pues éste es usado para estructurar
contenidos.

B. ¿Qué es AUTOLISP?

AUTOLISP es un lenguaje de programación derivado de la familia


Lisp. Éste lenguaje está diseñado específicamente para realizar
algoritmos (principalmente rutinas) orientados al uso de AUTOCAD
y sus derivados. Al ser AUTOLISP un lenguaje derivado de la familia
Lisp, se considera que tiene una sintaxis diferente a la de los
lenguajes de programación más convencionales.
Fig 1. Forma de una función en AUTOLISP
C. Utilidad de AUTOLISP en AUTOCAD
3) Tipos de datos: En AUTOLISP se trabaja con, enteros, reales,
Con AUTOLISP se generan programas gráficos que amplían la cadenas, listas, nombres y varios tipos de datos más, siendo las
funcionalidad y los comandos de AUTOCAD, y que permiten desde nombradas consideradas las principales.
funciones básicas como la creación de una línea, hasta funciones
complejas como lo son el desarrollo 3D y la proyección de planos. 4) Variables: Son nombres que toman el valor de un dato.
Casi cualquier actividad que se realiza manualmente en AUTOCAD,
puede ser realizada de manera automática con AUTOLISP.
5) Símbolos: Los símbolos utilizados son (, ), “, ‘, . y ; éstos no (3 4 A B 4)
pueden ser tomados como nombres, pues son los que dan estructura al
código. (list (list 'a 'b) (list 'c 'd 'e))

((A B) (C D E))

F. Condicionales en AUTOLISP H. Creación de Funciones de Usuario

Para definir funciones de usuario, se debe utilizar la función defun,


1) Cond: Se usa como la condicional primaria del lenguaje. Se
ésta se declara de la siguiente manera:
denota de la siguiente manera:
(defun nombre (parámetros) (ejecución))
(cond (prueba1 resultado1 ...) ...)
Primero se le da un nombre a la función para poder ser llamada como
La función cond acepta cualquier número de listas como argumentos.
una función normal, luego se especifican los parámetros que recibe, y
Evalúa el primer elemento de cada lista (en el orden indicado) hasta
luego se establece la parte a ejecutar.
que uno de ellos devuelva un valor distinto de nil.
Ejemplo:
2) If-Then-Else: Evalúa expresiones condicionalmente:
(defun hola ()
(if expr_prueba expr_then [expr_else])
(write-string "Hola, mundo!"))
Si expr_prueba no es nil, evalúa expr_then; en caso contrario evalúa
expr_else. III. Conclusiones
G. Creación de Listas Del trabajo se puede concluir:

1) La Función CONS:  Un lenguaje de programación es un lenguaje bien formado,


diseñado para plasmar algoritmos que sean procesables por
CONS es el constructor de lista básico. Construye listas insertando una máquina.
elementos en listas existentes (incluso vacías). El nuevo elemento
 AUTOLISP es un lenguaje de programación basado en
ocupa el primer lugar de la lista.
Lisp, diseñado para optimizar la funcionalidad de
AUTOCAD y sus derivados.
(cons nuevo_elemento lista)
 El AUTOLISP cuenta con una sintaxis muy sencilla, lo cual
El nuevo_elemento puede ser una variable o una lista. permite su fácil aprendizaje.
 Un programa en AUTOLISP consiste en una serie de
Ejemplo: expresiones.
 Una expresión de AUTOLISP puede ser una función, una
(cons 'a 'b) variable, una lista o un dato.
 Para realizar un condicional en AUTOLISP se usa la
(A. B)
función cond o la función if.
(cons 'a (cons 'b (cons 'c '())))  Con la función “list” se puede crear una lista en
AUTOLISP.
(A B C)  Para definir una función que no sea primitiva basta con usar
la función “defun”, asignar parámetros y darle una
(cons 'a '(b c d)) ejecución.

(A B C D) IV. Referencias

2) La función LIST: [1] Wikipedia (2016, Oct, 20). Lenguaje de Programación [En Línea].

(list elementos…) Disponible: https://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n

LIST Crea una lista con cualquier número y tipo de expresión. [2] CADD Soft Solutions (2016, Oct, 21). AutoLISP [En Linea].
Admite tanto variables como listas. Si uno de los argumentos es una
Disponible: http://www.caddsoftsolutions.com/AutoLISP.htm
lista vacía NIL aparecerá como uno de los términos de la lista.
[3] Wikipedia (2015, Nov, 8). Autolisp [En Línea].
Ejemplo:
Disponible: https://es.wikipedia.org/wiki/Autolisp
(list 3 4 'a (car '(b . c)) (+ 6 -2))
[4] De Leon S. Guillermo (2016, Oct, 21). AutoLISP [En Línea].

Disponible: http://www.cadenlinea.com/autolisp.htm

[5] Wikipedia (2016, Jun, 9). Lisp [En Línea].

Disponible: https://es.wikipedia.org/wiki/Lisp

[6] AutoDesk, Inc (2012, Ene). AutoLISP Developer's Guide [En Línea].

Disponible:
http://docs.autodesk.com/ACDMAC/2013/ENU/PDFs/acdmac_2013_autolisp
_developers_guide.pdf

[7] Burgos, Rolando (2016, Oct, 21). MANUAL DE REFERENCIA RAPIDA


DE LISP [En Línea].

Disponible: http://html.rincondelvago.com/guia-rapida-de-lisp.html

También podría gustarte