[LISP] Ch 1 - 함수와 데이터(Functions and Data)

2021. 3. 19. 17:03·Major/Lisp
728x90

* 교재 : COMMON LISP: A Gentle Introduction to Symbolic Computation

 

 

+ 기본 문법

- 주석 : ;;(한 줄 주석), ""(따옴표 안 주석) 

- 함수 정의 (defun)

- number : 정수, 실수, 비율

ex) (/ 3 6.0) = 0.5 (피연산자에 실수가 있으면 답이 실수로 나옴)

 

- Data type (데이터 타입)

  • Number (숫자)
  • Symbols (심볼)
  • T/Nil (부울)
  • Strings (문자)
  • Lists (리스트)

* QUOTE : '(DON'T EVALUATE)

 

1. 함수(Function)

- 리습에 내장되어있는 함수이다.

1) 종류

+, -, *, / 사칙연산
RANDOM 랜덤  ex) (random 10) = 6
expt 제곱  ex) (expt 4 2) = 16
min, max 최소, 최대 ex) (min 2 3 4) = 2
ABS 절댓값
SQRT 루트
sin, cos, tan 사인, 코사인, 탄젠트
round 반올림 ex) (round 11.2) = 11
rem 나머지 ex) (rem 11 5) = 1

* 이외에도 많은 내장함수들이 있다

 

2. 심볼(Symbols)

- 리습안의 다른 데이터 타입이다.

- 일련의 문자, 숫자 및 특수 문자를 뜻함

– English words영어단어 (computer), phrases구 (window-washer), abbreviations약어 (sqrt)

– Any combination of letters 단어조합 + numbers 숫자 + special characters 특수문자

  e.g.) r2d2, ready-set-go <-이런 것이 심볼이 가능하다

 

- 특별한 심볼 

T 참
NIL 거짓

 

3. Predicters

- 함수의 값이 t와 nil 로서 도출된다.

1) 종류

numberp  숫자임을 판별
symbolp 신볼임을 반별
zerop 0임을 판별
oddp 홀수임을 판별
evenp 짝수임을 판별
> 부등호
< 부등호
equal 두 값이 같은지 판별

- Not predicate 

: 값이 t, nil 이 나옴

ex ) (not nil) = t

728x90
저작자표시 비영리

'Major > Lisp' 카테고리의 다른 글

[Lisp] Ch 11 - 반복문과 블록구조 (Iteration and Block Structure)  (0) 2021.04.15
[Lisp] Ch 5 - Variables and Side Effects  (0) 2021.04.13
[Lisp] Ch 3 - Eval Notation  (0) 2021.04.13
[Lisp] Ch 4 - 조건문 (Conditionals)  (0) 2021.04.10
[Lisp] Ch 2 - 리스트(Lists)  (0) 2021.04.10
'Major/Lisp' 카테고리의 다른 글
  • [Lisp] Ch 5 - Variables and Side Effects
  • [Lisp] Ch 3 - Eval Notation
  • [Lisp] Ch 4 - 조건문 (Conditionals)
  • [Lisp] Ch 2 - 리스트(Lists)
BeNI
BeNI
코딩하는 블로그
  • BeNI
    코딩못하는컴공
    BeNI
  • 전체
    오늘
    어제
    • Menu (253)
      • My profile (1)
      • 회고 | 후기 (8)
      • Frontend (65)
        • Article (11)
        • Study (35)
        • 프로그래머스 FE 데브코스 (19)
      • Backend (0)
      • Algorithm (58)
        • Solution (46)
        • Study (12)
      • Major (111)
        • C&C++ (23)
        • Java (20)
        • Data Structure (14)
        • Computer Network (12)
        • Database (15)
        • Linux (6)
        • Architecture (3)
        • Lisp (15)
        • OS (1)
        • Security (2)
      • etc (2)
  • 링크

    • 깃허브
    • 방명록
  • 인기 글

  • 최근 댓글

  • 최근 글

  • 태그

    리팩토링
    자료구조
    파일처리
    백준
    데브코스
    react
    C++
    lisp
    Algorithm
    프로그래머스
  • hELLO· Designed By정상우.v4.10.2
BeNI
[LISP] Ch 1 - 함수와 데이터(Functions and Data)
상단으로

티스토리툴바