ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Aprende Lisp Inteligencia Artificial

Michel Angeles CormejoDocumentos de Investigación3 de Julio de 2017

9.689 Palabras (39 Páginas)228 Visitas

Página 1 de 39

Manual de Lisp

2991

Contenido

  1. Introducci´on        1
  1. Introducci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . .        1
  2. Los objetos b´asicos . . . . . . . . . . . . . . . . . . . . . . . .        1
  1. Los ´atomos        . . . . . . . . . . . . . . . . . . . . . . . .        2
  2. Las listas        . . . . . . . . . . . . . . . . . . . . . . . . .        2
  1. Funcionamiento b´asico del int´erprete . . . . . . . . . . . . . .        2
  1. Evaluaci´on de los ´atomos . . . . . . . . . . . . . . . . .        2
  2. Evaluaci´on de las listas . . . . . . . . . . . . . . . . . .        3
  1. Definici´on de funciones        4
  1. Funciones an´onimas . . . . . . . . . . . . . . . . . . . . . . . .        4
  2. Funciones con nombres . . . . . . . . . . . . . . . . . . . . . .        4
  1. Predicados        5
  1. Valores l´ogicos . . . . . . . . . . . . . . . . . . . . . . . . . . .        5
  2. Predicados de tipos . . . . . . . . . . . . . . . . . . . . . . . .        5
  3. Predicados de igualdad . . . . . . . . . . . . . . . . . . . . . .        6
  4. Operadores l´ogicos        . . . . . . . . . . . . . . . . . . . . . . . .        7
  1. Estructuras de control        8
  1. Constantes y variables . . . . . . . . . . . . . . . . . . . . . .        8
  1. Referencias        . . . . . . . . . . . . . . . . . . . . . . . .        8
  2. Asignaciones . . . . . . . . . . . . . . . . . . . . . . . .        8
  1. Invocaci´on de funciones . . . . . . . . . . . . . . . . . . . . . .        9
  2. Funciones de evaluaci´on        . . . . . . . . . . . . . . . . . . . . .        9
  3. Variables locales . . . . . . . . . . . . . . . . . . . . . . . . . .        10
  4. Condicionales . . . . . . . . . . . . . . . . . . . . . . . . . . .        10
  5. Iteraci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .        12
  1. Iteraci´on indefinida . . . . . . . . . . . . . . . . . . . .        12
  2. Iteraci´on general        . . . . . . . . . . . . . . . . . . . . .        13
  3. Iteraciones particulares . . . . . . . . . . . . . . . . . .        14
  4. Funciones de aplicaci´on . . . . . . . . . . . . . . . . . .        15
  5. Iteraciones del tipo PROG . . . . . . . . . . . . . . . .        16
  1. Nu´meros        18
  1. Operaciones num´ericas . . . . . . . . . . . . . . . . . . . . . .        18
  2. Comparaciones num´ericas        . . . . . . . . . . . . . . . . . . . .        20
  3. Las funciones trigonom´etricas y matem´aticas . . . . . . . . . .        21

ii

  1. Listas        23
  1. Las funciones de bu´squeda en las listas . . . . . . . . . . . . .        23
  2. Las funciones de construcci´on de listas        . . . . . . . . . . . . .        25
  3. Las funciones de modificaci´on f´ısica . . . . . . . . . . . . . . .        27
  4. Listas de asociaci´on (A–listas) . . . . . . . . . . . . . . . . . .        28
  5. Listas de propiedades (P–listas) . . . . . . . . . . . . . . . . .        29
  1. Funciones de lectura y escritura        32
  1. Funciones de lectura        . . . . . . . . . . . . . . . . . . . . . . .        32
  2. Variables de escritura . . . . . . . . . . . . . . . . . . . . . . .        32
  3. Funciones de escritura        . . . . . . . . . . . . . . . . . . . . . .        33
  1. Ficheros        35
  1. Funciones sobre ficheros        . . . . . . . . . . . . . . . . . . . . .        35
  2. La funci´on LOAD . . . . . . . . . . . . . . . . . . . . . . . . .        36
  1. Ayudas        37
  1. Funciones de ayuda . . . . . . . . . . . . . . . . . . . . . . . .        37
  1. El rastreador        . . . . . . . . . . . . . . . . . . . . . . .        37
  2. La ejecuci´on paso–a–paso        . . . . . . . . . . . . . . . .        37
  3. Descripci´on de s´ımbolos        . . . . . . . . . . . . . . . . .        39
  1. Macro–caracteres . . . . . . . . . . . . . . . . . . . . . . . . .        41
  2. Teclas definidas . . . . . . . . . . . . . . . . . . . . . . . . . .        41
  3. Funciones sobre el sistema . . . . . . . . . . . . . . . . . . . .        42

Bibliograf´ıa        44

´Indice        46

iii


1        Introducci´on

1.1        Introducci´on

Para cargar el GOLDEN COMMON LISP se escribe: C> GCLISP

y el sistema responde:

GOLDEN COMMON LISP, Version 1.01

Copyright (C) 1985 by Gold Hill Computers

; Reading file INIT.LSP

Type Alt-H for Help

Top-Level

*

GCLISP entra en el bucle principal del int´erprete que va, indefinidamente a leer una expresi´on sobre el terminal, evaluarla e imprimir el valor de esta evaluacio´n. GCLISP indica que espera la lectura de una expresi´on imprimiendo el car´acter * al comienzo de cada l´ınea. El valor de la evaluaci´on de una expresi´on se imprime en la l´ınea siguiente. Para salir se escribe (EXIT). Veamos un ejemplo de sesi´on con GCLISP:

C> GCLISP

GOLDEN COMMON LISP, Version 1.01

Copyright (C) 1985 by Gold Hill Computers

; Reading file INIT.LSP

Type Alt-H for Help

Top-Level

  • (+ 2 3)

5

  • (EXIT)

C>

1.2        Los objetos b´asicos

Los objetos que se usan en Lisp se llaman S–expresiones (por “Symbolic expressions”).

Estos objetos se clasifican en los siguientes tipos:

 nu´meros

[pic 1]

        ´atomos        s´ımbolos

        S–expresiones        

cadenas de caracteres

[pic 2] listas

Para referirnos a dichos objetos, usaremos las siguientes abreviaturas: s        S–expresi´on a        ´atomo

simb        s´ımbolo n        nu´mero l        lista

1.2.1        Los ´atomos

Los s´ımbolos

Los s´ımbolos son cadenas continuas de caracteres (conteniendo al menos un car´acter no num´erico). Por ejemplo, AGUA, A12, VAR-AUX, + son s´ımbolos. Los nu´meros

GCLISP manipula nu´meros enteros sobre 16 bits (permitiendo calcular en el intervalo [−215 + 1,215 − 1] , i.e. [-32767, 32767]) y nu´meros flotantes sobre 128 bits (permitiendo calcular en el intervalo [-1.0F+38, 1.0F+38]).

Las cadenas de caracteres

Una cadena de caracteres es una sucesi´on de caracteres, con o sin huecos, que comienza y termina por dobles comillas. Por ejemplo, "A 1 23" es una cadena de caracteres.

1.2.2        Las listas

Una lista es una sucesi´on ordenada, posiblemente vac´ıa, de objetos. Sinta´cticamente, se compone de un par´entesis abierto, objetos separados por huecos y un par´entesis cerrado. Por ejemplo, (a 1 b), (), (a (b (c))) son listas.

1.3        Funcionamiento b´asico del int´erprete

1.3.1        Evaluacio´n de los ´atomos

El valor de un nu´mero es el propio nu´mero. El valor de un s´ımbolo es:

  • el nu´mero que tenga asignado, si actu´a como variable num´erica;
  • la S-expresi´on que tenga asignada, en caso contrario.

El valor de una cadena de caracteres es la propia cadena.

1.3.2        Evaluacio´n de las listas

Las listas se interpretan como llamadas a funciones. El primer elemento es el nombre de la funci´on y el resto son los argumentos. Por ejemplo, la lista (+ 2 3), se interpreta como la funci´on + actuando sobre 2 y 3.

...

Descargar como (para miembros actualizados) txt (43 Kb) pdf (286 Kb) docx (47 Kb)
Leer 38 páginas más »
Disponible sólo en Clubensayos.com