E D R , A S I H C RSS

Lisp Language



1. μ†Œκ°œ

  • Functional Language. AI 등에 많이 쓰인닀. Scheme 은 LispLanguage 의 λ°©μ–Έ.
  • λ‚˜λ¬΄μœ„ν‚€μ˜ μ„λͺ…(λ•μ§ˆμ€ μœ„λŒ€ν•˜λ‹€): https://namu.wiki/w/LISP

2. Document

  • For the beginners:
    • Common LISP wikibooks: https://en.wikibooks.org/wiki/Common_Lisp
      • 영문 LISP νŠœν† λ¦¬μ–Ό μ€‘μ—μ„œ λ‰΄λΉ„μ—κ²Œ κ°€μž₯ μΉœμ ˆν•΄ λ³΄μ΄λŠ” μ„λͺ…μ„œ. ν•˜μ§€λ§Œ λΈμ™„성이닀.

    • TutorialsPoint LISP: http://www.tutorialspoint.com/lisp/index.htm
      • κ·Έ λ‹€μŒμœΌλ‘œ μΉœμ ˆν•΄ λ³΄μ΄λŠ” μ„λͺ…μ„œ.

    • emacs κ°•μ’Œ - lisp μ΄ν•΄ν•˜κΈ° 1: http://ageofblue.blogspot.kr/2012/01/emacs-lisp-1.html
      • emacsλΌλŠ” IDEλŠ” lisp을 톡해 μ œμ–΄ν•  수 μžˆλ‹€. 심지어 κ±°λŒ€ν•œ lisp 인터프리터라고 λΆˆλ¦¬κΈ°κΉŒμ§€ ν•œλ‹€. 이 글은 비둝 emacsλΌ μ“°κΈ° μœ„ν•΄ λΆ€κ°€μ μœΌλ‘œ lisp을 μ„λͺ…ν•˜λŠ” 수μ€μ΄μ§€λ§Œ, λͺ‡ μ•ˆλ˜λŠ” ν•œκ΅­μ–΄ lisp μ„λͺ…글이λ€λ‘œ μ°Έκ³ λΌ μœ„ν•΄ λ§ν¬λΌ κ±Έμ–΄ λ‘”λ‹€.

    • Practical Common LISP: http://www.gigamonkeys.com/book/
      • μ±… μ›κ³ λΌ μ˜¨λΌμΈ κ³΅κ°œν–ˆλ‹€. 근데 초μž₯λΆ€ν„° λ°μ΄ν„°λ² μ΄μŠ€λΌ λ§Œλ“€μ–΄κ°€λ©΄μ„œ μ„λͺ…ν•˜λŠ” 것이 ν•™μŠ΅ λ‚œμ΄λ„κ°€ μ€ λ†’μ€μ§€λ„ λͺ¨λ₯Έλ‹€.

  • μ‰¬μš΄ λ”°λΌν•˜κΈ°
  • CommonLispUnit
  • Lisp Prime - 책인λ“
  • Successful Lisp:How to Understand and Use Common Lisp - 책인λ“(some 에 λŒ€ν•œ μ„λͺ… 있음)

4. 예제 μ†ŒμŠ€

4.1. Factorial

(defun fact(x)
	(if (> x 0)
	    (* x (fact(- x 1)))
	1))

4.2. ꡬꡬ단

 (dotimes(j 9)(dotimes(i 9) (format t "~% ~s * ~s = ~s" (+ j 1) (+ i 1) (* (+ j 1) (+ i 1)))))

4.3. save & load

νŠœν† λ¦¬μ–Όμ— λ”±νžˆ λ‚˜μ™€ μžˆμ§€ μ•Šμ€κ±° κ°™κ³ 
μ£Όλ³€μ—μ„œ ν•˜λ„ λ¬Όμ–΄λ΄μ„œ κ·Έλƒ₯ 링크 던져주기 쒋도둝 기둝함
λ‹Ήμ—°νžˆ μš°λΆ„νˆ¬μ—μ„œ ν•œκ±°κ³  windowμ—μ„œ ν•˜λŠ”κ±΄ λͺ¨λ₯Έλ‹€
λ‹¨μˆœ output buffer 기둝(μ½”λ“œ μ €μž₯)
clispμ—μ„œ
(dribble "/home/test.lisp")
~~~(μ½”λ”©μ½”λ”©)~~~
(dribble)
ν•˜λ©΄ dribble λ‚΄μ˜ μ½”λ“œλ§Œ ""μ•ˆμ˜ 경둜의 파일λͺ…μœΌλ‘œ μ €μž₯됨
ν•„μš”μ‹œ clispμ—μ„œ (load "/home/test.lisp")을 ν•˜λ©΄ λ‘œλ“œλ¨
μ„Έμ…˜ μ €μž₯
clispμ—μ„œ
~~~(μ½”λ”©μ½”λ”©)~~~
(EXT:SAVEINITMEM)
ν•˜λ©΄ μ„Έμ…˜μ΄ lispinit.mem으둜 μ €μž₯됨
λ‹€μ‹œ μ‹€ν–‰ν• λ•ŒλŠ” cmdμ—μ„œ clisp -M lispinit.mem ν•˜λ©΄ 싀행됨

5. EBook

Upload:cltl_ht.tar
  • Common Lisp the Language, 2nd Edition by Guy L. Steele Jr. : μ—­μ‹œ μ±…μ΄λΌμ„œ μ²΄κ³„μ μœΌλ‘œ 잘 λ‚˜μ™€ μžˆλ‹€.

6. Lisp Program

CLISP : Commom Lisp(ANSI ν‘œμ€μœΌλ‘œ μ§€μ •λœ Lisp λ°©μ–Έ)의 κ΅¬ν˜„μ²΄ 쀑 ν•˜λ‚˜.
Clojure : Rich Hickeyκ°€ μ œμž‘ν•œ Lisp λ°©μ–Έ 쀑 ν•˜λ‚˜. JVM μƒμ—μ„œ λŒμ•„κ°€λŠ” Lisp κ΅¬ν˜„μ²΄λ‘œ, Java APIλΌ μ§μ ‘ λΆˆλŸ¬μ„œ μ‚¬μš©ν•˜λŠ” 것이 κ°€λŠ₯ν•˜λ‹€.
NoSmok:CommonLisp, NoSmok:LispM
Moa:LispLanguage, Moa:AnsiCommonLisp

1002의 경우 XLISP λΌλŠ” μœˆλ„μš°μš© ν”„λ‘œκ·Έλž¨ μ‚¬μš©ν–ˆμ—ˆλ‹€. μ–Έμ–΄ μžμ²΄λΌ μ΅νžˆλŠ”λ° μ΅œμ†Œν•œμ˜ κΈ°λŠ₯을 μ œκ³΅ν•˜λŠ” 인터프리터.

μ–Έμ–΄μ˜ μ’…λ₯˜
λ¨Έμ‹  μΉœν™”μ Cκ°€μ±
MachineLangaugeAssemblyCC++Objective-CObjective-C++씨앗
객체지ν–₯ν•¨μˆ˜ν˜• μ–Έμ–΄
SmallTalkJAVAC#Lispμ±HaskellScala
μŠ€ν¬λ¦½νŠΈμ–Έμ–΄
JavaScriptCoffeeScriptPerlLuaPHPPythonPyPyRubyShellScriptMATLAB
λΈλΆ„λ₯˜
ErlangGoJOCamlScalaRCSSMLAdaProlog
ScratchRustless
[http]ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄ λͺ©λ‘


μ–Έμ–΄λΆ„λ₯˜
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:39
Processing time 0.1029 sec