1 / 8

Introduction to Lisp

This presentation introduces the Common Lisp programming environment, highlighting its features such as interpreted and compiled execution, interactive data exploration, debugging capabilities, high-level language, extensive built-in libraries, dynamic redefinition, and more.

evelynd
Télécharger la présentation

Introduction to Lisp

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Lisp Peter D. Karp, Ph.D. Bioinformatics Research Group SRI International pkarp@ai.sri.com

  2. Approx presentation time along with hello.lisp: 1.5 hrs

  3. Common Lisp ProgrammingEnvironment • Interpreted and/or compiled execution • Interactive data exploration • Fabulous debugging environment • High-level language • Extensive built-in libraries: XML, regexps • Dynamic redefinition • Find out more! • See ALU.org or • http://www.international-lisp-conference.org/

  4. Why Do We Code in Common Lisp? • Gatt studied Lisp and Java implementation of 16 programs by 14 programmers (Intelligence 11:21 2000) • The average Lisp program ran 33 times faster than the average Java program • The average Lisp program was written 5 times faster than the average Java program • Roberts compared Java and Lisp implementations of a Domain Name Server (DNS) resolver • http://www.findinglisp.com/papers/case_study_java_lisp_dns.html • The Lisp version had ½ as many lines of code

  5. The Common Lisp ProgrammingEnvironment • Gatt studied Lisp and Java implementation of 16 programs by 14 programmers (Intelligence 11:21 2000)

  6. Peter Norvig’s Solution • “I wrote my version in Lisp. It took me about 2 hours (compared to a range of 2-8.5 hours for the other Lisp programmers in the study, 3-25 for C/C++ and 4-63 for Java) and I ended up with 45 non-comment non-blank lines (compared with a range of 51-182 for Lisp, and 107-614 for the other languages). (That means that some Java programmer was spending 13 lines and 84 minutes to provide the functionality of each line of my Lisp program.)” • http://www.norvig.com/java-lisp.html

  7. Interacting with Lisp • Read-eval-print loop • Load file of code into Lisp image • Use Emacs to incrementally redefine functions • hello.lisp

  8. Lisp Images -- dumplisp • Load code and data into Lisp virtual memory • Save as executable binary file

More Related