Created
December 11, 2011 09:18
-
-
Save jmsalcido/1459550 to your computer and use it in GitHub Desktop.
Pruebas de Common Lisp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
; =========== | |
; mp3_db.lisp | |
; =========== | |
; Primer programa en Common Lisp | |
; Simple base de datos de cds, practicamente el primer ejemplo de: Practical Common Lisp | |
; | |
; Porque Lisp? | |
; Por lo que he leido, es una gran manera de aprender! | |
; | |
; Autor: | |
; - Jose Miguel Salcido Aguilar - Diciembre 11 2011 | |
; ======================================================================================= | |
; ***** NOTA ***** | |
; ESTE PROGRAMA SOLO IMPRIME LA LISTA QUE SE LE AGREGUE EN EL CODIGO | |
; NO ACEPTA INPUT POR QUE AUN NO SE MANEJARLO | |
; JEJEJEJEJEJEJEJEJE | |
; SUERTE | |
; ***** NOTA ***** | |
; DEFINIR *db*: NIL | |
(defvar *db* nil) | |
; FUNCION make-cd: Funcion que pide titulo, artista, valor y ripped | |
; regresa una lista | |
(defun make-cd (title artist rating ripped) | |
(list :title title :artist artist :rating rating :ripped ripped)) | |
; FUNCION add-record: Agrega a la variable *db* el parametro dado (practicamente una lista) | |
(defun add-record (cd) (push cd *db*)) | |
; Llenando *db* | |
(add-record (make-cd "Love" "Angels and Airwaves" 9 t)) | |
(add-record (make-cd "Love Pt 2" "Angels and Airwaves" 9 t)) | |
(add-record (make-cd "Sueño de la Maquina" "Kinky" 7 t)) | |
(add-record (make-cd "Avion" "Kinky" 8 t)) | |
(add-record (make-cd "Blink 182" "Blink 182" 9 t)) | |
; Datos que se suponen | |
; FUNCION dump-db: Funcion que imprime la base de datos de una manera legible por los humanos! | |
(defun dump-db () | |
(dolist (cd *db*) | |
(format t "~{~a:~10t~a~%~}~%" cd))) | |
; FUNCION encabezado: Funcion que imprime el encabezado del programa | |
(defun encabezado () | |
(format t "~%Base de Datos de MP3~%=====================~%~%")) | |
; Imprimir la base de datos | |
(encabezado) | |
(dump-db) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment