lisp and prolog background
play

Lisp and Prolog Background Thank you to Prof. Roosen-Runge for the - PowerPoint PPT Presentation

Lisp and Prolog Background Thank you to Prof. Roosen-Runge for the slides on background and history. Edited by Gunnar Gotshalks BH2-1 Lisp History Lisp--invented ( about 1958 ) by the logician and AI researcher John McCarthy Widely


  1. Lisp and Prolog Background Thank you to Prof. Roosen-Runge for the slides on background and history. Edited by Gunnar Gotshalks BH2-1

  2. Lisp History • Lisp--invented ( about 1958 ) by the logician and AI researcher John McCarthy • Widely used in for applications in AI every since • Used in industry » To develop expert systems & other AI applications » For Rapid Application Development (RAD) Edited by Gunnar Gotshalks BH2-2

  3. Lisp Use • Lisp is used as an embedded language • Found inside applications like Emacs (MLisp) and AutoCAD (AutoLisp). » Emacs supports Lisp as a language for developing programs » As well as embedded language for controlling and customizing the editor itself Edited by Gunnar Gotshalks BH2-3

  4. Lisp availability • On all major and many minor platforms. • Numerous free- and shareware versions. • Standard: Common Lisp Edited by Gunnar Gotshalks BH2-4

  5. Prolog history • Prolog invented ( ≈ 1972) » Used at York in the by the AI researcher Student Information System to check Alan Colmeraurer applications for input errors • Widely used to develop » Early ideas developed expert systems & other at University of Montreal; then AI applications including University of natural language Marseilles processing Edited by Gunnar Gotshalks BH2-5

  6. Prolog Use & Availability • Prolog rumored to be embedded in MS Office • On all major and many minor platforms • Several free and shareware versions • Standard: ‘ Edinburgh-style ’ Edited by Gunnar Gotshalks BH2-6

  7. Survival Value McCarthy's Lisp versus Newell's IPL (Information Processing Language) » Both proposed » Both men pioneers languages at about the in AI and computer same time for symbolic science computing to be used in AI research Edited by Gunnar Gotshalks BH2-7

  8. And the winner is ? McCarthy? Newell? Why? Edited by Gunnar Gotshalks BH2-8

  9. & the winner is ... • Value of ‘ high-level ’ over ‘ low-level ’ language wasn ’ t so clearly recognized in the early days. • Newell made what turned out to be a fatal error for his language → This made his language very ⇒ Newell modeled IPL operational on the assembler → Couldn't be understood in language for an mathematical terms. early computer instead of timeless → Wasn't accepted as a notation for AI programs. logic Edited by Gunnar Gotshalks BH2-9

  10. Low- and High-level – 1 • Lisp became the ‘ assembler language ’ – lower-level – for AI programmers » Used to build higher-level systems » Wilensky Chapters 21 & 22 give the basis for Prolog! • Common Lisp = union of the techniques and tools people have found useful. Edited by Gunnar Gotshalks BH2-10

  11. Low- and High-level – 2 Prolog is a higher-level language for knowledge-based programming » More powerful, not necessarily as efficient » More compact » More understandable programs. Edited by Gunnar Gotshalks BH2-11

  12. Pure Lisp • Denotational, functional rather than operational » No states: just a mapping between arguments and result or, from input to output. • ‘ Pure ’ Lisp is all we will have time to discuss in this course » It's what makes Lisp distinctive Edited by Gunnar Gotshalks BH2-12

  13. Pure Prolog • ‘ Pure ’ Prolog: denotational & declarative • Just 1 state » A ‘ knowledge ’ base = database for facts • This turned out to be a very big advance! Edited by Gunnar Gotshalks BH2-13

  14. Lisp vs. Prolog ? Which AI language an AI researcher uses often depends on where they studied. • At Edinburgh, almost • At MIT and Stanford, all Prolog almost all Lisp • MIT has used a dialect of Lisp called Scheme in their first year programming course for many years. Edited by Gunnar Gotshalks BH2-14

  15. At York • We have been more a ‘ Prolog shop ’ than a ‘ Lisp shop ’ in this department. • Prof. Stachniak teaches a 4th year course on Logic Programming which includes a more advanced look at Prolog. Edited by Gunnar Gotshalks BH2-15

  16. Other Choices • There are many denotational, functional languages other than Lisp » ML is popular in British and some European universities – American universities tend to use Lisp • No strong competitors to Prolog at present, mainly variants, extensions, and dialects. • Objected-oriented add-ons available for both languages Edited by Gunnar Gotshalks BH2-16

  17. Lisp in ‘ Production ’ Work • Programmers tend to use operational features – This is not good; it is the fault of poor software- development tools – There are claims that 90% of function calls in Lisp programs are to assignment functions – like setq and rplaca! • Assignment changes state and is sure sign of an operational description – Compare the palindrome programs Edited by Gunnar Gotshalks BH2-17

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend