Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

LispLanguage: Difference between revisions

From ZeroWiki
imported>flyjsw
No edit summary
(Repair MoniWiki formatting after migration)
 
(7 intermediate revisions by 2 users not shown)
Line 2: Line 2:


== 소개 ==
== 소개 ==
* Functional Language. [[:인공지능 AI]] 등에 많이 쓰인다. [[Scheme]] 은 LispLanguage 의 방언.
* Functional Language. :인공지능 AI 등에 많이 쓰인다. [[Scheme]] 은 [[LispLanguage]] 의 방언.
* 나무위키의 설명(덕질은 위대하다): https://namu.wiki/w/LISP
* 나무위키의 설명(덕질은 위대하다): https://namu.wiki/w/LISP


Line 38: Line 38:
=== 구구단 ===
=== 구구단 ===
   (dotimes(j 9)(dotimes(i 9) (format t "~% ~s * ~s = ~s" (+ j 1) (+ i 1) (* (+ j 1) (+ i 1)))))
   (dotimes(j 9)(dotimes(i 9) (format t "~% ~s * ~s = ~s" (+ j 1) (+ i 1) (* (+ j 1) (+ i 1)))))
=== save & load ===
튜토리얼에 딱히 나와 있지 않은거 같고
주변에서 하도 물어봐서 그냥 링크 던져주기 좋도록 기록함
당연히 우분투에서 한거고 window에서 하는건 모른다
clisp에서
(dribble "/home/test.lisp")
[[User:Maintenance script|Maintenance script]] ([[User talk:Maintenance script|talk]])(코딩코딩)[[User:Maintenance script|Maintenance script]] ([[User talk:Maintenance script|talk]])
(dribble)
하면 dribble 내의 코드만 ""안의 경로의 파일명으로 저장됨
필요시 clisp에서 (load "/home/test.lisp")을 하면 로드됨
clisp에서
[[User:Maintenance script|Maintenance script]] ([[User talk:Maintenance script|talk]])(코딩코딩)[[User:Maintenance script|Maintenance script]] ([[User talk:Maintenance script|talk]])
(EXT:SAVEINITMEM)
하면 세션이 lispinit.mem으로 저장됨
다시 실행할때는 cmd에서 clisp -M lispinit.mem 하면 실행됨
* 참고링크 : http://stackoverflow.com/questions/7424307/can-i-save-source-files-in-clisp
= EBook =
= EBook =
[[:File:cltl_ht.tar|cltl_ht.tar]]
cltl_ht.tar
* Common Lisp the Language, 2nd Edition by Guy L. Steele Jr. : 역시 책이라서 체계적으로 잘 나와 있다.
* Common Lisp the Language, 2nd Edition by Guy L. Steele Jr. : 역시 책이라서 체계적으로 잘 나와 있다.


Line 46: Line 64:
[http://clojure.org/ Clojure] : Rich Hickey가 제작한 Lisp 방언 중 하나. JVM 상에서 돌아가는 Lisp 구현체로, Java API를 직접 불러서 사용하는 것이 가능하다.
[http://clojure.org/ Clojure] : Rich Hickey가 제작한 Lisp 방언 중 하나. JVM 상에서 돌아가는 Lisp 구현체로, Java API를 직접 불러서 사용하는 것이 가능하다.
NoSmok:CommonLisp, NoSmok:LispM
NoSmok:CommonLisp, NoSmok:LispM
Moa:LispLanguage, Moa:AnsiCommonLisp
Moa:[[LispLanguage]], Moa:AnsiCommonLisp
----
----
[1002]의 경우 XLISP 라는 윈도우용 프로그램 사용했었다. 언어 자체를 익히는데 최소한의 기능을 제공하는 인터프리터.
[1002]의 경우 XLISP 라는 윈도우용 프로그램 사용했었다. 언어 자체를 익히는데 최소한의 기능을 제공하는 인터프리터.
[[include(틀:ProgrammingLanguage)]]
{{:틀:[[ProgrammingLanguage]]}}
[[언어분류]]
[[언어분류]]

Latest revision as of 00:34, 29 March 2026

소개

Document

    • 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/
      • 책 원고를 온라인 공개했다. 근데 초장부터 데이터베이스를 만들어가면서 설명하는 것이 학습 난이도가 좀 높은지도 모른다.

GUI Toolkit

The Lisp Toolkit Common Lisp Interface Manager CAPI CLIM sample

예제 소스

Factorial

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

구구단

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

save & load

튜토리얼에 딱히 나와 있지 않은거 같고 주변에서 하도 물어봐서 그냥 링크 던져주기 좋도록 기록함 당연히 우분투에서 한거고 window에서 하는건 모른다

clisp에서
(dribble "/home/test.lisp")
Maintenance script (talk)(코딩코딩)Maintenance script (talk)
(dribble)
하면 dribble 내의 코드만 ""안의 경로의 파일명으로 저장됨
필요시 clisp에서 (load "/home/test.lisp")을 하면 로드됨
clisp에서
Maintenance script (talk)(코딩코딩)Maintenance script (talk)
(EXT:SAVEINITMEM)
하면 세션이 lispinit.mem으로 저장됨
다시 실행할때는 cmd에서 clisp -M lispinit.mem 하면 실행됨

EBook

cltl_ht.tar

  • Common Lisp the Language, 2nd Edition by Guy L. Steele Jr. : 역시 책이라서 체계적으로 잘 나와 있다.

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 라는 윈도우용 프로그램 사용했었다. 언어 자체를 익히는데 최소한의 기능을 제공하는 인터프리터. {{:틀:ProgrammingLanguage}} 언어분류