LISP-기본 구문
LISP의 기본 빌딩 블록
LISP 프로그램은 세 가지 기본 구성 요소로 구성됩니다.
atom
list
string
안 atom연속 문자의 숫자 또는 문자열입니다. 여기에는 숫자와 특수 문자가 포함됩니다.
다음은 몇 가지 유효한 원자의 예입니다.
hello-from-tutorials-point
name
123008907
*hello*
Block#221
abc123
ㅏ list 괄호로 묶인 원자 및 / 또는 기타 목록의 시퀀스입니다.
다음은 몇 가지 유효한 목록의 예입니다.
( i am a list)
(a ( a b c) d e fgh)
(father tom ( susan bill joe))
(sun mon tue wed thur fri sat)
( )
ㅏ string 큰 따옴표로 묶인 문자 그룹입니다.
다음은 몇 가지 유효한 문자열의 예입니다.
" I am a string"
"a ba c d efg #$%^&!"
"Please enter the following details :"
"Hello from 'Tutorials Point'! "
댓글 추가
세미콜론 기호 (;)는 주석 행을 표시하는 데 사용됩니다.
예를 들어
(write-line "Hello World") ; greet the world
; tell them your whereabouts
(write-line "I am at 'Tutorials Point'! Learning LISP")
실행 버튼을 클릭하거나 Ctrl + E를 입력하면 LISP가 즉시 실행하고 반환 된 결과는 다음과 같습니다.
Hello World
I am at 'Tutorials Point'! Learning LISP
다음으로 이동하기 전에 몇 가지 주목할 점
다음은 주목해야 할 몇 가지 중요한 사항입니다.
LISP의 기본 숫자 연산은 +,-, * 및 /입니다.
LISP는 함수 호출 f (x)를 (fx)로 나타냅니다. 예를 들어 cos (45)는 cos 45로 작성됩니다.
LISP 표현식은 대소 문자를 구분하지 않으며 cos 45 또는 COS 45는 동일합니다.
LISP는 함수의 인수를 포함하여 모든 것을 평가하려고합니다. 세 가지 유형의 요소 만 상수이며 항상 자체 값을 반환합니다.
Numbers
그 편지 t, 그것은 논리적 진실을 의미합니다.
가치 nil, 그것은 논리적 거짓과 빈 목록을 의미합니다.
LISP 양식에 대한 추가 정보
이전 장에서 LISP 코드의 평가 과정은 다음 단계를 거친다고 언급했습니다.
판독기는 문자열을 LISP 객체 또는 s-expressions.
평가자는 Lisp의 구문을 정의합니다. formss- 표현식으로 만들어졌습니다. 이 두 번째 평가 수준은 어떤 s- 표현식이 LISP 형식인지 결정하는 구문을 정의합니다.
이제 LISP 양식이 될 수 있습니다.
원자
비어 있거나 목록이 아닌
첫 번째 요소로 기호가있는 모든 목록
평가자는 유효한 LISP 형식을 인수로 사용하고 값을 반환하는 함수로 작동합니다. 이것이 우리가LISP expression in parenthesis, 전체 표현식 / 양식을 평가자에게 인수로 보내고 있기 때문입니다.
LISP의 명명 규칙
이름 또는 기호는 공백, 여는 괄호 및 닫는 괄호, 큰 따옴표 및 작은 따옴표, 백 슬래시, 쉼표, 콜론, 세미콜론 및 세로 막대를 제외한 모든 수의 영숫자로 구성 될 수 있습니다. 이러한 문자를 이름에 사용하려면 이스케이프 문자 (\)를 사용해야합니다.
이름은 숫자를 가질 수 있지만 완전히 숫자로 구성되지는 않습니다. 왜냐하면 숫자로 읽히기 때문입니다. 마찬가지로 이름에는 마침표가있을 수 있지만 완전히 마침표로 만들 수는 없습니다.
작은 따옴표 사용
LISP는 함수 인수와 목록 멤버를 포함한 모든 것을 평가합니다.
때때로 우리는 원 자나 목록을 문자 그대로 가져 와서 평가하거나 함수 호출로 취급하지 않도록해야합니다.
이렇게하려면 원자 또는 목록 앞에 작은 따옴표를 붙여야합니다.
다음 예제는이를 보여줍니다.
main.lisp라는 파일을 만들고 여기에 다음 코드를 입력합니다.
(write-line "single quote used, it inhibits evaluation")
(write '(* 2 3))
(write-line " ")
(write-line "single quote not used, so expression evaluated")
(write (* 2 3))
실행 버튼을 클릭하거나 Ctrl + E를 입력하면 LISP가 즉시 실행하고 반환 된 결과는 다음과 같습니다.
single quote used, it inhibits evaluation
(* 2 3)
single quote not used, so expression evaluated
6