E D R , A S I H C RSS

Lisp Language

Difference between r1.15 and the current

@@ -1,11 +1,23 @@
[[TableOfContents]]
== Document ==
 
== 소개 ==
* Functional Language. [:인공지능 AI] 등에 많이 쓰인다. [Scheme] 은 LispLanguage 의 방언.
* 나무위키의 설명(덕질은 위대하다): https://namu.wiki/w/LISP
 
== 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 설명이 희귀한 관계로 참고를 위해 링크를 걸어 둔다.
* emacs라는 IDE는 lisp을 통해 제어할 수 있다. 심지어 거대한 lisp 인터프리터라고 불리기까지 한다. 이 글은 비록 emacs를 쓰기 위해 부가적으로 lisp을 설명하는 수준이지만, 몇 안되는 한국어 lisp 설명글이므로 참고를 위해 링크를 걸어 둔다. 
 
* Practical Common LISP: http://www.gigamonkeys.com/book/
* 책 원고를 온라인 공개했다. 근데 초장부터 데이터베이스를 만들어가면서 설명하는 것이 학습 난이도가 좀 높은지도 모른다.
* [http://lib.store.yahoo.net/lib/paulgraham/acl2.txt 쉬운 따라하기]
* [http://c2.com/cgi/wiki?CommonLispUnit CommonLispUnit]
* [http://mypage.iu.edu/~colallen/lp/lp.html Lisp Prime] - 책인듯
@@ -29,6 +41,27 @@
{{{
(dotimes(j 9)(dotimes(i 9) (format t "~% ~s * ~s = ~s" (+ j 1) (+ i 1) (* (+ j 1) (+ i 1)))))
}}}
 
=== 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 하면 실행됨
}}}
 
* 참고링크 : http://stackoverflow.com/questions/7424307/can-i-save-source-files-in-clisp
= EBook =
Upload:cltl_ht.tar
* Common Lisp the Language, 2nd Edition by Guy L. Steele Jr. : 역시 책이라서 체계적으로 잘 나와 있다.




1. 소개

2. Document

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#LispHaskellScala
스크립트언어
JavaScriptCoffeeScriptPerlLuaPHPPythonPyPyRubyShellScriptMATLAB
미분류
ErlangGoJOCamlScalaRCSSMLAdaProlog
ScratchRustless
[http]프로그래밍 언어 목록


언어분류
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:39
Processing time 0.0411 sec